12. april 2014 - 11:29
Der er
2 kommentarer og 1 løsning
Validere flere emailadresser i ét inputfelt
Hejsa. Jeg validerer i dag for korrekt indtastet emailadresse med nedenstående function. Men nu har jeg et ønske, om at der i inputfeltet kan indtastes flere mailadresser (adskilt med komma eller semikolon). Nogen forslag til løsning? function check_email($email) { if((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/',$email)) ) { $host = explode('@', $email); if(function_exists("checkdnsrr")) { if(checkdnsrr($host[1].'.', 'MX') ) return TRUE; if(checkdnsrr($host[1].'.', 'A') ) return TRUE; if(checkdnsrr($host[1].'.', 'CNAME') ) return TRUE; } else { return TRUE; } } return FALSE; } if(check_email($_POST['email']) === FALSE) { $fejl = 'Emailadressen er indtastet forkert!<br>'; }
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
12. april 2014 - 12:53
#1
Brug explode function til at dele det op med løb array igenem og brug funktionen til at kontrollere de forskellige email
13. april 2014 - 12:47
#2
Hejsa og tak for input. Send venligst et svar. Det er blevet til denne function: function check_email($email) { $emailArray = explode(',', $email); $fejlEmail = 0; //FEJLTÆLLER for($i = 0; $i < count($emailArray); $i++) { // FOR KORREKT INDPUT if (!filter_var($emailArray[$i], FILTER_VALIDATE_EMAIL)) { $fejlEmail++; //FEJL I EMAIL ADRESSE } $host = explode('@', $emailArray[$i]); if (function_exists("checkdnsrr")) { if(!checkdnsrr($host[1], 'MX') ) { $fejlEmail++; } if(!checkdnsrr($host[1], 'A') ) { $fejlEmail++;} } } Return $fejlEmail; //Hvis værdi = 0, ingen fejl og hvis værdi > 0, fejl. }
17. april 2014 - 04:10
#3
Så den først nu :) Tak skal du have :)
Vi tilbyder markedets bedste kurser inden for webudvikling