Es ist für Sie unmöglich, jedes dieser Sonderzeichen manuell zu maskieren, ganz zu schweigen davon, dass Sie es normalerweise mit Inhalten zu tun haben, die automatisch vom Formular übermittelt werden.
Also sollte die Funktion mysql_real_escape_string verwendet werden:
mysql_real_escape_string – Escape-Zeichen in Zeichenfolgen, die in SQL-Anweisungen verwendet werden, unter Berücksichtigung des aktuellen Zeichensatzes der Verbindung.
Aber beachten Sie: Diese Funktion entgeht % und _ nicht. Darüber hinaus ist es am besten, diese Funktion nicht für die gesamte SQL-Anweisung zu verwenden, sondern nur die in die SQL-Anweisung übergebenen Zeichenfolgenparameter zu maskieren, da sonst unerwartete Ergebnisse auftreten.
Skriptbeispiel:
Der Code lautet wie folgt:
$item = "Zak's and Derick's Laptop"
$escaped_item = mysql_real_escape_string($item);
printf ("Escaped string: %sn", $escaped_item);