• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

gleichzeitig mehrere email-adessen auf richtigkeit prüfen

andy83

New member
Moin moin,
folgendes Problem beschäftigt mich seit einiger Zeit:
PHP:
$mymails="abc@xy.de,test,abc.de,hallo";
$emails_in_array=explode(",",$mymails);

function checkmail($email)
{
        if( ereg("^.+@.+\\..+$", $email, $check))
		{
			return true;
		}
		else
		{
			return false;
		} 
}

foreach($emails_in_array as $email)
{
      echo checkmail($email);
}

Ich lasse jede Email-Adresse im Array auf ihre Richtig prüfen - das klappt alles.
Nun möchte ich aber gerne, dass sobald EINE Adresse NICHT STIMMT, eine Fehlermeldung erscheint und erst wenn ALLE stimmen, das Formular abgeschikt wird... Ich bekomme es nicht hin. Hat jemand nen Tipp????

DANKE
 
Nun möchte ich aber gerne, dass sobald EINE Adresse NICHT STIMMT, eine Fehlermeldung erscheint und erst wenn ALLE stimmen, das Formular abgeschikt wird... Ich bekomme es nicht hin. Hat jemand nen Tipp????
Du könntest einfach aufhören, sobald die erste nicht stimmt.
Allerdings verwirrt Deine Frage etwas. Was willst Du denn jetzt genau wissen? Wie eine IF-Anweisung funktioniert? Oder wie man eine in einer Schleife verwendet? Oder wie man mit eine Fehlermeldung ausgibt?
 
Einfach aufhören, sobald eine Adresse nicht stimmt, wie von Albu vorgeschlagen, ist sicher das Beste. Wenn unbedingt alle Checks durchlaufen werden sollen, bietet sich z.B. folgendes an:
PHP:
$allok=true;
foreach($emails_in_array as $email) 
{ 
      $allok = $allok && checkmail($email); 
}

$allok ist true wenn alle adressen stimmen.
 
Zurück
Oben