Hallo zusammen,
ich habe folgendes Problem:
Ich habe ein Textfeld in der Datenbank welches von einer PHP-Applikation gelesen und beschrieben wird. Vor dem Schreiben sichere ich die Strings mit der funktion mysql_real_escape_string ab, wenn ich ein Hochkomma in das Feld eintrage, dann erscheint ein MySQL-Fehler, welcher von der Funktion mysql_real_escape_string() ausgelöst wird:
Das merwürdige ist, dass dieser Fehler ausschliesslich durch mysql_real_escape_string() gemeldet wird, die Funktion mysql_query() wird Fehlerfreiausgefuehrt und die Daten werden in die Datenbank geschrieben.
Der Fehler wird ausschließlich durch ein einfaches Hochkomma (== ') ausgelöst, weder durch Semikolons noch durch doppelte Hochkommas.
Das Query welches ausgefuehrt wird:
Der Code:
Die diversen echos am Ende sind nur zum Debugging. Ich möchte nicht meine DB zumüllen, der Fehler ist auch so reproduzierbar. Kennt jemand das Problem?
ich habe folgendes Problem:
Ich habe ein Textfeld in der Datenbank welches von einer PHP-Applikation gelesen und beschrieben wird. Vor dem Schreiben sichere ich die Strings mit der funktion mysql_real_escape_string ab, wenn ich ein Hochkomma in das Feld eintrage, dann erscheint ein MySQL-Fehler, welcher von der Funktion mysql_real_escape_string() ausgelöst wird:
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 'k;low;new;
Der Fehler wird ausschließlich durch ein einfaches Hochkomma (== ') ausgelöst, weder durch Semikolons noch durch doppelte Hochkommas.
Das Query welches ausgefuehrt wird:
PHP-Code:
INSERT INTO task
(title, priority, status, startdate, last_change, description, user)
VALUES ('sfdsfd'dsd', 'low', 'new', NOW(), NOW(), '
description .. example', 'test')
PHP-Code:
echo '==================<br>';
$description = mysql_real_escape_string($description);
echo '==================<br>';
$title = mysql_real_escape_string($title);
$query = "INSERT INTO task (title, priority, status, startdate, last_change, description, user)";
$query .= "VALUES ('".$title."',";
$query .= "'".$priority."',";
$query .= "'new',";
$query .= "NOW(),";
$query .= "NOW(),";
$query .= "'".$description."',";
$query .= "'".$_SESSION['USER_NAME']."')";
//$sql_execute = mysql_query($query,$dz) or die(mysql_error());
//echo $description;
echo $query;
Kommentar