Mailinglisten-Archive |
>Ich habe ein Mailingskript, das den Inhalt eines Arrays gegen einen
>Formularfeld namens "required" abprüft. "required" enthält alle
>Pflichtfelder.
So in der Art "name,vorname,email" oder wie?
>Das Abprüfen funktioniert auch. Nur, wenn "vorname"
>Pflichtfeld ist, aber "name" nicht, "name" aber nicht ausgefüllt wird,
>gibt es bei strstr() eine Fehlermeldung, dass "name" ausgefüllt werden
>muss.
Hmm, noch nicht so ganz verstanden...
>Ich weiß nicht, wie ich das jetzt anderes erklären soll, und schicke
>deshalb einfach mal die Funktion mit:
>function form_vollstaendig($e){
> extract($e);
> foreach ( $e as $key => $value ){
> $req = strstr($required, $key);
> if($req == $key && $value == ""){
> print "$key muss ausgefüllt werden!";
> exit;
> }
> }
>}
Hmm, so langsam dämmert's:
Zwei Lösungsansätze: mach' aus $required ein array('vorname','email')
und aus Deiner Funktion
function form_vollstaendig($e)
{
$required = array('vorname','email');
$req = (array_diff($required, extract($e));
foreach (array_diff($required, extract($e)) as $k)
if (empty($e[$k])
{
print $k.'muss ausgefüllt werden!';
exit;
}
}
oder aus umschliesse die Begriffe in required mit '|' oder so und
frage auch so ab: $req = strstr($required, '|'.$key.'|');
--
Thomas Beckmann, Kiel, Germany
thomas_(at)_ThBeckmann.de
php::bar PHP Wiki - Listenarchive