PHP und MySQL

bauchinj

Erfahrenes Mitglied
Hallo wieder mal!

Hab ein SQL-Statement mit einer PHP-Variablen in ein Datenbankfeld geschrieben, in etwa so:

Datenbank: database
Tabelle: table
Feld: sql (TEXT)

SELECT * FROM `other_table` WHERE `value`='".$wert."'

Hab einfach angenommen, wenn ich dieses Feld mittels PHP auslesen, als query-string verwende und $wert einen plausieblen Wert gebe, wird dieser Wert erstens eingesetzt und zweitens die Query richtig ausgeführt:
mysql_db_query($database,$sql);

Wenn ich mir nun aber $sql ausgeben lasse, so bekomme ich das sql-statement mit '".$wert."' ausgegeben => $wert wird nie befüllt sondern als String erkannt.gibt es hierfür eine Lösung? Weiß auch nicht so recht, wie ich bei Dr. Google suchen soll...

Danke für eure Antworten
 
Hallo,

ohne Codeausschnitt der entsprechenden Stelle kann ich nur raten.
Ich denke mal, du baust den String mit einfachen Anführungszeichen und hast das $wert direkt drin stehen.
Somit werden Variablen nicht ersetzt. Falls ich richtig liege, dann ziehe mal die Variable aus dem String raus, wie folgt:

PHP:
$wert = 'SELECT ......' . $wert . 'bla bla bla';

Falls du das schon machst, und es trotzdem falsch geschrieben wird, dann lass dir mal mit Syntax-Highlightning anzeigen, ob deine Anführungszeichen korrekt interpretiert werden.

Gruß
BK
 
Danke für deine Antwort!


Im Source funktionieren meine Statements mit Variablen - mein Problem ist, dass ich ein Statement (mit PHP-Variable) in der Datenbank gespeichert habe und mittels php auslesen und die Variable als Variable und nicht als String verwenden möchte: aus $wert (in DB) soll zB 6 (in php) werden und nicht $wert bleiben.

Lese einfach das Feld "sql" aus und speichere diesen Wert in die Variable $sql.

dies wiederum verwende ich folgendermaßen:
PHP:
mysql_query($sql);
Leider bekomme ich hier nie ein Ergebnis, da in $sql nicht '6' steht sondern $wert.

etwas klarer?
 
Zurück