On Sat, 20 Nov 2004 11:49:20 +0100, Peter Anskjær wrote:
> $SEARCH_QUERY = "SELECT tekst FROM Artikler WHERE leksikon_soegeord LIKE
> '%".$searchWord."%'ORDER BY emne, overskrift";
> (forsimplet for overskuelighedens skyld.)
>
> Det vil selvfølgeligt ikke være muligt at bruge specialtegn i søgningen, men
> det er jeg heller ikke interesseret i. Jeg går ud fra at det er helt fint
> eftersom jeg har kørt en addslashes på $searchWord.
Hvorfor saa ikke udnytte at man ikke maa bruge specialtegn, og lave noget
whitelisting, fremfor blacklisting:
$searchWord = preg_replace('/[^a-zæøå\-]/', '', $searchWord);
Der kommer i hvertfald ikke nogle SQL-injections gennem det udtryk. Du kan
udvide det regulaere udtryk efter behov.
--
Christian Jørgensen | Use the Source, Luke!
http://www.razor.dk |