Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » Syntax Check für MySQL Query Antworten
Syntax Check für MySQL Query

taschenjesus
Pixelschubser


Beiträge: 5


Weiß jemand ein Skript, mit dem man einen Query-String auf korrekte Syntax überprüfen kann, bevor man den abschickt? Zum Beispiel in folgendem Stil:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13:
function checkMySQLSyntax($sql) {
  if (magische Bedingung) {
    return false;
  }
  return true;
}
...
$sql = $fragwuerdigerString." tabelle
  SET prev = '".$ds['id']."' WHERE id = ".$lastid;
if (checkMySQLSyntax($sql)) mysql_query($sql, $db);
else echo "fehlerhafte Syntax";


Vielen Dank!

Diese Nachricht wurde geändert von: taschenjesus
  Profil   Website   Editieren   Zitieren

aykut
Otto-Normal-Poster


Beiträge: 82


hier ein work-around

1) Du gibst den SQL String im Browser aus (vor dem eigentlichen Ausführen): echo $sql;
2) Mit einem Admin Tool für MySQL führst Du dieses Befehl aus

Es gibt aber auch andere Mgl. von PHP aus dieses Problem anzugehen.
Man kann die Ausgabe von Warnings/Errors selber steuern (Befehl fällt mir gerade nicht ein)
Mit dem richtigen setzen dieser Einstellungen (via Code, Einzeiler) bekommst Du auch die echte Fehlermeldung, z.B. "DB-Tabelle existiert nicht" u.ä.

Hier würde ich, wenn Du mit php5 arbeitest, mit try catch Befehlen arbeiten.

  Profil   Editieren   Zitieren
 

Antworten
Nach oben