formulareingaben prüfen
dom
- php
bisher prüfe ich alle per post übergebene variablen so:
$username = trim(strip_tags(addslashes($_POST['username'])));
jetzt würde ich gerne eine funktion einbauen, welche alle post-werte automatisch wie oben überprüft, mit folgender funktion komme ich an die werte des post-arrays:
foreach ($_POST as $varname => $varvalue)
{
$post[$varname] = $varvalue;
}
doch jetzt würde ich gerne wieder über $username etc. auf die einzelnen werte wie oben zugriefen können. jemand eine idee? ich steh wohl gerade auf dem schlauch.
hi,
doch jetzt würde ich gerne wieder über $username etc. auf die einzelnen werte wie oben zugriefen können. jemand eine idee?
variable variablen; extract().
macht aber den "sinn" der superglobals in meinen augen wieder zunichte.
gruß,
wahsaga
Hello,
bisher prüfe ich alle per post übergebene variablen so:
$username = trim(strip_tags(addslashes($_POST['username'])));
Ich würde das nicht als Prüfung bezeichnen, sondern nur als Maskierung.
Außerdem sollten Daten im Script ja auch im Raw-Format verarbeitet werden, wenn sie nicht dazu dienen, gleich an eine DB oder ein HTML-Script zu gehen.
Es wäre also besser, nach magic_quotes_gpc() zu gucken und wenn das true leifert, die Maskierungen wieder zu entfernen, statt noch weitere hinzuzufügen. Und wenn Du die Daten an eine SQL-Schnittstelle übergeben willst, dann müssen die sowieso mit der für diese Schnittstelle passenden Maskierungsfunktion behandelt werden und nicht mit dem (meistens) unzulänglichen addslashes().
Außerdem ist es praktisch, zusammengehörige Werte in einem Array gebunden zu halten, da man die dann später sehr bequem verarbeiten kann.
Das $_POST-Array kann man z.B. rekursiv auf schädliche Inhalte hin untersuchen.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom