Avatar billede mrbs Nybegynder
29. november 2007 - 14:37 Der er 8 kommentarer og
1 løsning

bindestreg i mail-validering

Hej!

Jeg har følgende preg_match, som fejler når en email indeholder bindestreg - og jeg kan ikke finde fejlen - er der nogen der kan hjælpe?

'/(^[a-z0-9_.]+@[a-z0-9]+([-.]{1}[a-z0-9]+)*.[a-z]{2,5}$)/i'
Avatar billede mrbs Nybegynder
29. november 2007 - 14:47 #1
eks. fejler:

mail-mig@besked.dk

men ikke:

mailmig@besked.dk
Avatar billede nielle Nybegynder
29. november 2007 - 14:50 #2
Sådan?

'/(^[a-z0-9_.-]+@[a-z0-9]+([-.]{1}[a-z0-9]+)*.[a-z]{2,5}$)/i'
Avatar billede mrbs Nybegynder
29. november 2007 - 14:51 #3
Yes!

Havde også funder fejlen - jeg ved ikke lige hvad jeg tænkte på! :) tak

Smid et svar :)
Avatar billede nielle Nybegynder
29. november 2007 - 14:54 #4
Endnu bedre:

'/^[a-z0-9_.-]+@([a-z0-9-]+\.)+[a-z]{2,}$/i'
Avatar billede barklund Nybegynder
29. november 2007 - 15:12 #5
Du vil stadig afvise en masse korrekt email-adresser med det script. Men dig om det ;)

Et dejligt eksempel er:

"hej med dig @ noget"@127.0.0.1

Det er skam fuldt lovligt - og vil fejle i stort set alle email-valideringsscripts (og sikkert også i en del mta'er og mua'er) :)

--
Morten Barklund
Avatar billede roenving Novice
29. november 2007 - 17:35 #6
Find rfc 2821, der står klokkeklart, at man ikke må validere på andet end domæne og @'et foran, alt foran @-tegnet er mailserverens suveræne domæne !-)
Avatar billede roenving Novice
29. november 2007 - 17:36 #7
Avatar billede coderdk Praktikant
30. november 2007 - 12:19 #8
Der bør mindst også være + med:

'/^[a-z0-9_.+-]+@([a-z0-9-]+\.)+[a-z]{2,}$/i'

Hvis man f.eks. bruger gmail, og har "brugernavn", så kan man få mail ved at sende til brugernavn+nogetandet@gmail.com hvor "nogetandet" kan være hvad du har lyst til ;)
Avatar billede barklund Nybegynder
30. november 2007 - 12:26 #9
På nogle mail-systemer er det istedet "-" der har den funktion. Men ja, det er praktisk :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester