CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
19.12.2007, 11:44:54
|
Anfänger
|
|
Registriert seit: Dec 2006
Beiträge: 11
|
|
Vordefinierte Konstante mit $_GET übergeben
Hallo,
ich will per $_GET eine eine vordefinierte Konstante an ein mysql_select übergeben.
PHP-Code:
<?php
define('DATENBANK', 'personen');
echo "<p><a href=\"".$_SERVER['PHP_SELF']."?index&db=DATENBANK\">Startseite</a></p>\n";
if (isset($_GET['index'])) {
echo $sql = "SELECT * FROM ".$_GET['db']."";
}
?>
Als Ausgabe bekomme ich:
SELECT * FROM DATENBANK statt SELECT * FROM personen.
Hab schon diverse schlaue Bücher gewälzt und gegoogelt, aber keine brauchbare Lösung bekommen.
Für Eure Hilfe bin ich sehr dankbar, stehe nämlich voll auf dem Schlauch.
Der werftarbeiter
|
19.12.2007, 11:53:50
|
Senior Member
|
|
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Versuch es mal mit
PHP-Code:
echo '<p><a href="?index=true&db=DATENBANK">Startseite</a></p>';
Du weißt aber hoffentlich, dass man das auch mit beliebigen anderen Parameter aufrufen kann und so unter Umständen komplett andere Abfragen ausführen lassen kann?
__________________
Wat der Bauer nich kennt, dit frisster nich.
|
19.12.2007, 12:41:29
|
Anfänger
|
|
Registriert seit: Dec 2006
Beiträge: 11
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Hallo defabricator,
Danke für deine prompte Antwort, aber die Ausgabe bleibt leider die Gleiche.
Zitat:
Du weißt aber hoffentlich, dass man das auch mit beliebigen anderen Parameter aufrufen kann und so unter Umständen komplett andere Abfragen ausführen lassen kann?
|
Das weiß ich wohl, aber die Seite liegt in einem sicheren Bereich. Wie wäre das Problem denn eleganter zu lösen?
Mast und Schotbruch
der Werftarbeiter
|
19.12.2007, 13:19:32
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Zitat:
Zitat von werftarbeiter
Als Ausgabe bekomme ich:
SELECT * FROM DATENBANK statt SELECT * FROM personen.
Hab schon diverse schlaue Bücher gewälzt und gegoogelt, aber keine brauchbare Lösung bekommen.
|
Du sollst die Bücher nicht wälzen sondern lesen. PHP ersetzt Variable in "Gänsefußzeichenketten". Variable != Konstante
|
19.12.2007, 13:51:08
|
Anfänger
|
|
Registriert seit: Dec 2006
Beiträge: 11
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Hallo meikel
Zitat:
Du sollst die Bücher nicht wälzen sondern lesen. PHP ersetzt Variable in "Gänsefußzeichenketten". Variable != Konstante
|
War mir schon klar, dass variablen und konstanten nicht das gleiche sind. Ich arbeite nicht regelmäßig mit PHP und wollte eigentlich nur einen kleinen Lösungsvorschlag oder Ansatz.
Gruß vom werftarbeiter.
|
19.12.2007, 14:08:06
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
echo $variable . "Zeichenkette" . KONSTANTE . "noch ne Zeichenkette";
|
19.12.2007, 14:08:25
|
Senior Member
|
|
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Mischt Du eventuelle verschiedene Beispiele aus dewm Buch?
Zitat:
Zitat von werftarbeiter
echo $sql = "SELECT * FROM ".$_GET['db']."";
|
an der Stelle wird keinesfalls die Datenbank gewechselt sondern allenfals die Tabelle. Was genau möchtest Du erreichen?
__________________
Wat der Bauer nich kennt, dit frisster nich.
|
19.12.2007, 14:45:42
|
Anfänger
|
|
Registriert seit: Dec 2006
Beiträge: 11
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Hallo,
ich möchte verschiedene tabellen aufrufen können, die dann mit einer function ausgewertet werden. Die Tabellennamen sind per define() voregeben.
Da ich zwei Homepages verwalte, die auf ein gleiches Datenbanksystem aufbauen, möchte ich nur die Konstanten für die jeweilige Seite anpassen.
|
19.12.2007, 16:00:27
|
Junior Member
|
|
Registriert seit: Jan 2006
Alter: 58
Beiträge: 169
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Zitat:
Zitat von werftarbeiter
Hallo,
ich will per $_GET eine eine vordefinierte Konstante an ein mysql_select übergeben.
PHP-Code:
<?php
define('DATENBANK', 'personen');
echo "<p><a href=\"".$_SERVER['PHP_SELF']."?index&db=DATENBANK\">Startseite</a></p>\n";
if (isset($_GET['index'])) {
echo $sql = "SELECT * FROM ".$_GET['db']."";
}
?>
Als Ausgabe bekomme ich:
SELECT * FROM DATENBANK statt SELECT * FROM personen.
Hab schon diverse schlaue Bücher gewälzt und gegoogelt, aber keine brauchbare Lösung bekommen.
Für Eure Hilfe bin ich sehr dankbar, stehe nämlich voll auf dem Schlauch.
Der werftarbeiter
|
Da macht dein Script auch das Richtige.
Du übergibst im String ja auch db=DATENBANK und nicht den String der Tabelle!
|
19.12.2007, 16:24:10
|
Senior Member
|
|
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
|
|
AW: Vordefinierte Konstante mit $_GET übergeben
Oh, ich glaube jetzt hat es klick gemacht ...vielleicht.
Du willst, dass der Benutzer zwischen zwei oder mehr Konstanten wählen kann? Im Link steht dann immer table=alpha oder table=beta und Du tauschst dann in den Skripten nur die define('alpha', .... Zeilen aus.
PHP-Code:
<?php
echo '<p><a href="?index=xyz&table=alpha">Startseite alpha</a></p>';
echo '<p><a href="?index=xyz&table=beta">Startseite beta</a></p>';
echo '<p><a href="?index=xyz&table=gamma">Startseite gamma</a></p>';
define('alpha', 'personen');
define('beta', 'rauchwaren');
define('gamma', 'restaurants');
if ( isset($_GET['table']) ) {
if ( defined($_GET['table']) ) {
$sql = 'SELECT * FROM '.constant($_GET['table']);
}
else {
echo 'unbekannte Tabelle';
exit();
}
}
else {
echo 'keine Tabelle gewählt';
exit();
}
echo $sql;
?>
__________________
Wat der Bauer nich kennt, dit frisster nich.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 21:53:59 Uhr.
|