Oplæg til diskussion: $_REQUEST vs. $_GET, $_POST, $COOKIE
Jeg har nu læst adskillige artikler (offline/online, bla. i php|Architect) omhandlende input-filtrering.Alle som én har de et eller andet sted et afsnit om, at man IKKE bør bruge $_REQUEST, men istedet de separate $_GET, $_POST og $_COOKIE ($_REQUEST samler netop disse tre). Der er dog ingen af artiklerne, der giver en særlig god begrundelse andet en den, at man som udvikler ikke kan se, hvorfra et givent datasæt kommer fra.
Men det synes jeg er en tynd begrundelse. Regel nr. 1 i input-filtrering er, at man ikke kan stole på NOGEN data. Alle data (om de kommer fra GET (querystring), POST (form) eller COOKIE kan jo forfalskes af en bare nogenlunde habil programmør. Når dette nu er tilfældet, kan vi i princippet så ikke blot være ligeglade med, fra hvilken af disse tre datakilder vores data kommer?
Gør det i virkeligheden ikke blot vores PHP-script mere fleksibelt, at anvende $_REQUEST?
Jeg forudsætter selvfølgelig input-filtrering (som white-listing, range-checking, mv.) er implementeret.
Jeg stiller hermed op til en saglig og forhåbentlig oplysende debat.
