Hallo...
ich arbeite gerade an einem Kontaktformular.
Die ankommenden POST-Daten werden zunächst validiert.
function valid_input(&$var) {
if(is_string($var)) {
$var = strip_tags($var);
$var = htmlspecialchars($var);
$var = preg_replace("/(content-type:|bcc:|cc:|to:|from:)/im", "", $var); // ##### VERHINDERT HEADERMANIPULATION
$var = stripslashes($var);
$var = trim($var);
}
else {
if(is_array($var)) {
foreach($var AS $key => $value) {
valid_input($var[$key]);
}
}
}
}
valid_input($_POST);
Anschließend möchte ich (da es viele input-Felder sind) mittles dieser while-Anweisung meinen Mail-Body erzeugen.
siehe: http://aktuell.de.selfhtml.org/tippstricks/php/form-mail/
while(list($strName,$value) = each($_POST)) {
if(is_array($value)) {
foreach($value as $value_array) {
$strMailtext .= $strName.": ".$value_array."\n";
}
}
else {
$strMailtext .= $strName.": ".$value."\n";
}
}
Nun muss ich aber feststellen, dass KEIN Inhalt ($strMailtext) erzeugt wird. Und das schein an der Validierungsfunktion zu liegen,
denn wenn ich die Funktion valid_input($_POST) nicht aufrufe, funktioniert es.
Weiß jemand woran das liegen könnte.
Bin auch für sonstige Hinweise, was z.b. die Validierung angeht dankbar.
Gruß
Kim N.