Sorry, mein Fehler. Ich habe Dir eine Perl RegEx untergejubelt ohne den Suchstring richtig zu definieren.
Die einfache Variante sollte richtig natürlich so lauten:
PHP-Code:
$sql = str_replace( array( "%", "_", "*", "?" ), array( "\\%", "\\_", "%", "_" ), $query);
oder mit einer Perl RegEx wäre es richtig so:
PHP-Code:
$sql = preg_replace( array( "/%/", "/_/", "/*/", "/?/" ), array( "\\%", "\\_", "%", "_" ), $query);
Übrigens wenn es z. B. MySQL ist und Du mysql_query() verwendest, dann brauchts Du mit SQL-Injection keine Angst haben, da mysql_query() immer nur eine Query verarbeiten kann (alles nach dem Semikolon wird ignoriert). Wie es bei den anderen aussieht weiß ich natürlich nicht.
Pingu
Lesezeichen