WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Validering av E-post adress (https://www.wn.se/forum/showthread.php?t=12618)

rille77 2006-02-25 17:34

Har problem när jag ska validera en epost adress med nedanstående script, det fungerar utmärkt förutom att man inte kan ha _ som första eller sista tecken.

Skulle vara väldigt tacksam om någon kunde hjälpa mig med lösningen.

Kod:

if((formular.msn.value.search(/^[A-Za-z0-9_\-\.]+@[^ ]+\.[A-Za-z0-9]{2,4}$/) == -1)&&(formular.msn.value!=""))
  {
    alert("E-post adress är inte godkänd.\n");
  formular.msn.focus();
  return false;
  }


Staffconsulting 2006-02-25 22:06

Alltså du bör ha en koll på serversidan också om man stänger av javascriptstödet.. men det kanske du redan har..

rille77 2006-02-25 22:52

Jodå det är kontroll på serversidan också, problemet är att javascriptet säger ifrån när det inte ska göra det.

martine 2006-05-14 18:40

Lite sent svar, men:

Inte behöver man väl escapa punkt inom klamrar i js?
Kanske /[A-Za-z0-9_\-\.]+/ istället för /[-A-Za-z0-9_.]+/
(nu är jag inte så insatt i regexp:ar i js så det kan hända att jag irrar här)

Sista biten verkar dessutom lite väl generös
@[^ ]+\.[A-Za-z]{2,4} istället för @[^ ]+\.[A-Za-z0-9]{2,4} borde väl räcka
(och att godta allt utom mellanslag är väl generöst men man kanske borde inskränka lite till?)

Vad är det för mejladresser som inte blir godkända typ bö[email protected] eller [email protected]el ??

rille77 2006-05-15 11:36

Problemet är som jag skrev tidigare att man inte kan ha _ som första eller sista tecken.

[email protected] Fungerar inte
[email protected] Fungerar inte
[email protected] Fungerar utmärkt

Hade visst lagt tråden i fel forum såg jag nu, vi får se om nån pigg moderator flyttar den.

martine 2006-05-15 12:20

Citat:

Originally posted by rille77@May 15 2006, 11:36
Problemet är som jag skrev tidigare att man inte kan ha _ som första eller sista tecken.

[email protected] Fungerar inte
[email protected] Fungerar inte
[email protected] Fungerar utmärkt

Hade visst lagt tråden i fel forum såg jag nu, vi får se om nån pigg moderator flyttar den.

Jag vet inte om jag förstått dig helt, men du menar att du vill stoppa typ _namn@...?

/^[A-Za-z0-9]+([-_.]?[a-zA-Z0-9]+)*@[^ ]+\.[A-Za-z]{2,4}$/

Ovan borde fungera och förbjuda mail av typen [email protected] och likn. ( .hej.@..., [email protected], ... )

rille77 2006-05-16 17:14

Menar precis tvärtom, vill tillåta _ i början och slutet av namn.

martine 2006-05-16 17:45

Citat:

Originally posted by rille77@May 16 2006, 17:14
Menar precis tvärtom, vill tillåta _ i början och slutet av namn.
Egentligen borde uttrycket tillåta både -, . och _ var och hur som helst före @, har du provat? (Det var därför jag antog att omvänt, att du ville förbjude dem inte tillåta)
Prova att skriva om första delen till
Kod:

/^[-A-Za-z0-9_.]+@
eller
Kod:

/^[\w.-]+@
Kanske det fungerar bättre?

Jonas 2006-05-16 17:51

Och om jag har en ".museum" address då?
Den kommer inte att glida igenom din validering ;)


Alla tider är GMT +2. Klockan är nu 23:00.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson