In PHP maskiere ich Zeichen, bevor ich sie mit mysql_real_escape_string in eine MySQL-Datenbank einfüge
$array_to_insert = array_map('mysql_real_escape_string', $my_arr);
$mysql->setTbl("mytable");
$id = $mysql->insertArray($array_to_insert);
Beim Speichern werden doppelte Anführungszeichen als Escapezeichen mit a gespeichert \
. Ich möchte dies nicht, da einige der Daten HTML sind und Tags wie enthalten können <a href="www.stackoverflow.com">
usw., die gespeichert werden als <a href=\"www.stackoverflow.com\">
und dann in einem WordPress-Setup falsch angezeigt.
Ich habe an anderer Stelle auf Stackoverflow gelesen, dass man, um die doppelten Anführungszeichen nicht zu umgehen, zuerst einfügen muss (wie oben), dann auswählen und erneut in eine Tabelle einfügen muss.
Gibt es eine Möglichkeit, dieses Problem zu lösen, ohne auswählen und erneut einfügen zu müssen?
Danke (Hinweis: Die Datenbank, die ich verwende, ist im utf-8-Format)
Wo hast du das Einfügen/Auswählen/Einfügen gelesen? Das ist eine schreckliche Lösung – Simshauns Antwort sollte es fast abdecken, da dies nach einem doppelten Fluchtproblem riecht.
– HorusKol
8. Dezember 2011 um 23:19 Uhr