Hallo Christian,
Dann pruef doch, ob es nur ein Teilwort oder ein ganzes Wort
ist, z. B. so:(?:\b(?:drop|insert|update|delete|select)\b)|"|'
<dummfrag> was ist \b </dummfrag>
hab nur ein tolles englisches Tutoral zu regex gefunden, alles kann ich wahrscheinlich dann doch nicht lesen!? ;)
Ansonsten sehe ich den Sinn nicht so recht. Escape die
Strings korrekt (in Perl gibt es da DBI::quote und quotemeta,
in PHP gibt es da mysql_quote_string, addslashes und so
weiter), dann solltest du auch keine Probleme haben/bekommen.
Du hast natürlich recht...(das ist mir jetzt aufgefallen, nachdem ich schon ne Seite Text geschrieben hatte, man sollte eben gleich richtig lesen)
durch addslashes zB. sind dann demzufolge alle " und' wirkungslos!?
Ist wahrscheinlich die bessere Variante!? Obwohl, dann lasse ich ja den Unsinn durchgehen und hätte dann vielleicht in der DB als Username:
";"drop dbname"; oder ähnliches
stehen, wenn auch mit wirkungslosen Anführungszeichen,aber trotzdem Unsinn
Wie fängst Du das ab, wenn User Unsinn in Formularfelder reinschreiben
(manchmal auch sehr zerstörerischer Unsinn)
danke
liebe Grüsse
romy
Gruesse,
CK
DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
->Alles ist gut wenn es aus Schokolade ist