[PHP / MySQL] Sonderzeichen in Suche ersetzen

Twisterking

Lt. Commander
Registriert
Jan. 2004
Beiträge
1.726
Hi @ all!

Hätte (noch) eine kleine Frage an euch! ;)

Und zwar bräuchte ich einen Befehl, der mir bei der Sucheingabe bzw. beim weiteren preg_match des Suchwortes mit den DB einträgen Sonderzeichen wie "(", "/" und dergleichen ignoriert! Sprich einfacht mit "" ersetzt!
Ich denke mal das wird irgendwie über reguläre Ausdrücke gehen indem man nur Buchstaben (groß/klein) und Zahlen zulässt?!
Auf jeden Fall wäre ich echt dankbar wenn mir da wer helfen könnte! :) ^^

mfg
Twist
 
nimm ein "Database Abstraction Layer" wie pear_db etc...
und ich würd dir raten nicht nur , und / zu erstetzen -> sql-injections
 
@ asdfman:

Danke die Site kenn ich! ;)
Hilft mir aber leider nicht 100%ig weiter! -.-

@ x81:
Ich schaus mir mal an! :)
Die Sache mit den Injections entgehe ich sowieso mit mysql_escape und deak. magic quotes! ^^
 
PHP:
$str = preg_replace('/[^\w]/', ' ', $str);

da bleibt kein Sonderzeichen übrig ... ;)
 
Wenn du es in einer Datenbank speicher willst, gibt es oft von der entsprechenden extension eine escape funktion!!! Ebenso gibtes diese für reguläre ausdrücke usw.
 
Zurück
Oben