Mailinglisten-Archive |
On Wednesday, 19. June 2002 16:57, Markus Walter wrote:
Moin,
>
> Was mach ich den falsch???
> Grüsse markus
Würdest Du Dir angewöhnen, anstatt PHP-Code, eine SQL-Query zu posten,
hättest Du den Fehler vermutl. selber gefunden:
SELECT * FROM badword WHERE ... strBadWord LIKE '%sex33%'
Da strbadword den Inhalt "sex" hat, kann dass natürlich nicht matchen.
Korrekt wäre:
SELECT fields FROM badword WHERE 'sex33' LIKE CONCAT("%", strBadWord, "%")
Allerdings ist es die Frage, ob das eine glückliche Lösung ist, Eingaben
serverseitig zu prüfen. Zu dem kann bei dieser Abfrage kein Index verwendet
werden.
Zu Deinem PHP-Code:
1) SELECT * FROM ....
Wozu selektierst Du alle Felder, wenn Du sie gar nicht brauchst?! Das kostet
nur Speicher (und auch Performance).
2) mysql_db_query
ist deprecated, und fliegt irgendwann vermutlich raus.
Du solltest mysql_select_db und mysql_query verwenden
3) Resultset freigeben
Wieso gibst Du das Resultset nicht wieder frei mittels mysql_free_result?!
Gruss
Georg
---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive