Gerade diese Funktion ist bei der Übernahme von Werten aus dem Request nicht hilfreich.
In diesem oben beschreibenen Falle wäre es besser,a) $id = 0;
if (iiset($_GET['id'])
{
$id = intval($_GET['id'])
}
Da hast du natürlich recht. Ich nutze auf meinen Seiten eine extra Funktion, die aus den übergebenen Werten alles ausbaut was da nicht reingehört, und da ist strip_tags() nur ein kleiner Teil davon. Die optimale Methode, übergebene Werte von allem "feindlichen" zu befreien suche ich selbst noch, immer wieder gibt es denkbare Szenarien was falsch laufen könnte.
Entscheidend ist, sich darüber überhaupt mal Gedanken zu machen. Wenn es ganz einfach ist, mal eben was in der Adresszeile zu fummeln, wird das sicher irgendwann gemacht. Je weniger Erfolg der "Angreifer" damit hat, desto eher wird er die Lust verlieren. Professionelle Internetauftritte wie Amazon oder dergleichen sind da noch ganz anderen Gefahren ausgesetzt, weil man da nicht nur den Betreiber ärgern kann in dem man seine kleine Datenbank löscht, sondern weil da unter Umständen richtig Kohle zu machen ist.