Fehler in query
Simon
- php
Hi,
kann mir da jemand sagen wo ich den Fehler mache, ich finde keinen:
in beiden Fällen ist die Variabel $ort='ORT';
Wenn ich so schreibe bekomme ich diese Fehlermeldung:
'SELECT * FROM DB WHERE ORT ='.mysql_real_escape_string($ort).''
Unknown column 'ORT' in 'where clause'.
aber wenn ich so mache:
"SELECT * FROM DB WHERE ORT ='$ort'"
funktionier es.
MfG
Simon
'SELECT * FROM DB WHERE ORT ='.mysql_real_escape_string($ort).''
"SELECT * FROM DB WHERE ORT ='$ort'"
Eh klar, das ist ja nicht dasselbe, auch wenn es nix zu escapen gibt. Hast du schon geprüft, wie denn die Abfrage im Klartext aussieht, bevor du sie an MySQL-übergibst?
Eh klar, das ist ja nicht dasselbe, auch wenn es nix zu escapen gibt. Hast du schon geprüft, wie denn die Abfrage im Klartext aussieht, bevor du sie an MySQL-übergibst?
Nein, wie meinst du das?
Ich bin nur grad dabei das ganze so zu machen um eben SQL Injections zu vermeiden nur weiß ich nicht ob es auch mit mysql_real_escape_string() ausreicht.
Eh klar, das ist ja nicht dasselbe, auch wenn es nix zu escapen gibt. Hast du schon geprüft, wie denn die Abfrage im Klartext aussieht, bevor du sie an MySQL-übergibst?
Nein, wie meinst du das?
Du sollest zumindest das hier machen und die beiden Ausgaben vergleichen:
echo 'SELECT * FROM DB WHERE ORT ='.mysql_real_escape_string($ort).'';
echo "SELECT * FROM DB WHERE ORT ='$ort'";
Ich bin nur grad dabei das ganze so zu machen um eben SQL Injections zu vermeiden nur weiß ich nicht ob es auch mit mysql_real_escape_string() ausreicht.
Das reicht schon aus, keine Frage.
Hi
'SELECT * FROM DB WHERE ORT =' .mysql_real_escape_string($ort).''
Vielleicht
'SELECT * FROM DB WHERE ORT =\'' . mysql_real_escape_string($ort). '\''
~~~ ??