Hallo Ihr Spezialisten,
ich habe ein Problem welches sich völlig meiner logischen Fehleranalyse entzieht.
Mit folgender Anweisung fügen ich Daten in meine MySQL-Db ein:
$result = @mysql_query("update products set info='hier stehen die Daten' where id=1);
Also eine ganz banale SQL-Anweisung, die auch so weit läuft, so lange der Text im Feld info eine bestimmte Länge nicht überschreitet. Auch hier gibt es keinen logischen Zusammenhang. Bei einem bestimmten Text (HTML-Code) liegt die Grenze bei 950 Zeichen. Füge ich nur ein Zeichen mehr ein, erhalte ich folgende Fehlermeldung:
1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''
Ich habe zuerst gedacht es liegt hat den ganzen HTML-Tags. Habe dann einmal nur Buchstaben überschrieben, da waren es dann nur 868 Zeichen die übergeben werden konnten -> selbe Fehlermeldung.
Das kuriose ist, wenn ich dann die "fehlerhafte" SQL-Anweisung mit einem MySQL QueryBrowser ausführe, werden die Daten in die Datenbank geschrieben. Führe ich die Anweisung mittels PHP-Code aus, dann nicht.
Das Problem tritt sowohl auf meinem Test-Rechner mit einem localen Apache und MySQL,
also auch Online auf dem Server auf.
Wie gesagt, ich habe keine Idee? Vielleicht irgendwelche Cache Parameter o.ä. was man setzen muss?
Hat jemand eine Idee?
Viele Grüße
Ralf Smolin
ich habe ein Problem welches sich völlig meiner logischen Fehleranalyse entzieht.
Mit folgender Anweisung fügen ich Daten in meine MySQL-Db ein:
$result = @mysql_query("update products set info='hier stehen die Daten' where id=1);
Also eine ganz banale SQL-Anweisung, die auch so weit läuft, so lange der Text im Feld info eine bestimmte Länge nicht überschreitet. Auch hier gibt es keinen logischen Zusammenhang. Bei einem bestimmten Text (HTML-Code) liegt die Grenze bei 950 Zeichen. Füge ich nur ein Zeichen mehr ein, erhalte ich folgende Fehlermeldung:
1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''
Ich habe zuerst gedacht es liegt hat den ganzen HTML-Tags. Habe dann einmal nur Buchstaben überschrieben, da waren es dann nur 868 Zeichen die übergeben werden konnten -> selbe Fehlermeldung.
Das kuriose ist, wenn ich dann die "fehlerhafte" SQL-Anweisung mit einem MySQL QueryBrowser ausführe, werden die Daten in die Datenbank geschrieben. Führe ich die Anweisung mittels PHP-Code aus, dann nicht.
Das Problem tritt sowohl auf meinem Test-Rechner mit einem localen Apache und MySQL,
also auch Online auf dem Server auf.
Wie gesagt, ich habe keine Idee? Vielleicht irgendwelche Cache Parameter o.ä. was man setzen muss?
Hat jemand eine Idee?
Viele Grüße
Ralf Smolin
Kommentar