Importierung und Sonderzeichen

Rosti

Mitglied
Hallo,
ich arbeite an einer Importierung. An sich kein Problem, doch bei einem Sonderzeichen schlägt die Importierung fehl. Ich habe schon einiges versucht aber dennoch. Es handelt sich bei dem Zeichen um '. Meldung:

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 in der Schule gelernt, dass man laut und deutlich sprechen soll." "ZWEITEN' at line 1

Wie kann ich das Problem lösen?
 
Vermutlich hast du die MySQL-Metazeichen nicht maskiert. Probier’s mal mit der mysql_real_escape_string()-Funktion.
 
Dann wendest du es vermutlich nur falsch an.
PHP:
$val = "So hab' ich in der Schule gelernt, dass man laut und deutlich sprechen soll.";
$query = "INSERT INTO foo SET bar = '".mysql_real_escape_string($val)."'";
 
Hmm ne ich wende es genau so an wie du hier:
PHP:
$text=$row['text'];
$insert=mysql_query("INSERT INTO rb_entrys SET timestamp='".$date[2]."-".$date[1]."-".$date[0]." ".$time[0].":".$time[1].":00', name='".$row['name']."', mail='".$row['email']."', homepage='".$row['homepage']."', icq='".$icq."', ip='".$row['ip']."', text='".mysql_real_escape_string($text)."', kom_txt='".$row['comment']."'")or die("".mysql_error()."");
 
Würde dir empfehlen zu prüfen ob der String richtig zusammengesetzt wird indem du ihn erstmal in eine Variable schreibst und dann ausgibst. Dann siehst du genau was an den Server geht und wo das Problem liegt.

also
PHP:
$sql = "INSERT INTO rb_entrys SET timestamp='".$date[2]."-".$date[1]."-".$date[0]." ".$time[0].":".$time[1].":00', name='".$row['name']."', mail='".$row['email']."', homepage='".$row['homepage']."', icq='".$icq."', ip='".$row['ip']."', text='".mysql_real_escape_string($text)."', kom_txt='".$row['comment']."'";
echo $sql;
$insert=mysql_query($sql);

Und dann mal posten was da raus kommt ;)
Es sei denn du kommst so schon selbst auf den Fehler.

So würde ich es zumindest machen.

lg
 
Zurück