Datenbank abfrage funktioniert nicht

jahking

Benutzer
Beiträge
8
Hallo zusammen,
kann jemand vielleicht helfen.
Datenbank abfrage funktioniert nicht. ich habe 2 variables definiert: variable $table für tabelle und variable $field für spalte. Die abfrage lautet : $query = 'SELECT id,' .$field 'AS list FROM' .$table;
"id" und "list" sind die Indizes für den assoziatives Array $row.
Leider kriege ich diese Fehlermeldung : Parse error: syntax error, unexpected ''AS list FROM'' (T_CONSTANT_ENCAPSED_STRING) in.......on line.....

So schaut das ganze aus:

if ($_GET['tabelle'])
{
switch ($_GET['tabelle'])
{
case 'hersteller': $table = 'hersteller';
$field = 'zulieferer';
break;
case 'kunde' : $table = 'kunde';
$field = 'doktor';
break;
case 'produkt' : $table = 'produkt';
$field = 'produkt';
break;
default : die ('Manipulationsversucht');
}
$query = 'SELECT id,' .$field 'AS list FROM' .$table;
$result = mysql_query ($query)or die (mysql_error());
while ($row = mysql_fetch_assoc($result))
{
$list[] = $row;
}
print_r($list);

Danke für jede Hilfe
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.420
Hallo zusammen,
kann jemand vielleicht helfen.

Einmal fragen reicht. In der Zwischenzeit hättest mal schauen können, was denn in Deiner Variablen $query drin steht, wenn diese zur DB geht. Da kann einiges schiefgehen in Deinem Konstrukt. Das fängt ja schon mit fehlenden Leerzeichen zwischen FROM und Tablename an.

Andreas
 

ukulele

Datenbank-Guru
Beiträge
4.579
Also bei MS SQL würde das nicht funktionieren da Variablen als Tabellennamen nicht umgewandelt werden sondern er tatsächlich versucht, auf eine Tabelle mit Namen der Variable zurück zugriefen. Dort muss der Select erst als String zusammengesetzt werden und kann dann per EXEC ausgeführt werden.
 

akretschmer

Datenbank-Guru
Beiträge
9.420
Also bei MS SQL würde das nicht funktionieren da Variablen als Tabellennamen nicht umgewandelt werden sondern er tatsächlich versucht, auf eine Tabelle mit Namen der Variable zurück zugriefen. Dort muss der Select erst als String zusammengesetzt werden und kann dann per EXEC ausgeführt werden.

nein, er hantiert mit PHP und frickelt da sein Query zusammen. Paßt schon soweit.
 
Werbung:
Oben