aan alle goede dingen komt een eind, webmasterplein.net 2003 - 2013
wij danken jullie voor al mooie momenten die dankzij dit forum ontstonden - Derk, Rutger en Stef

[js]Email validatie

Deel alles wat je delen kan, gebruik het voor opslag, plaats het omdat je er trots op bent of creƫer samen wat moois!

[js]Email validatie

Berichtdoor DoubleJ » 16 apr 2009 16:38

Ik heb heel lang gezocht naar een goede functie om e-mail adressen te kunnen valideren.
Uiteindelijk heb ik een php functie uit wordpress omgebouwd.

Code: Selecteer alles
function isEmail( userEmail )
{
   // Regular expression to check email
   var emailExp = new RegExp('^([a-z0-9+_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,6}\$', 'i');
   if (userEmail.length > 0 && userEmail.indexOf('@') != -1 && userEmail.indexOf('.') != -1)
   {
      return emailExp.test(userEmail);
   }
   else
   {
      return false;
   }
}
De wondere wereld van het wijde web.
Avatar gebruiker
DoubleJ
wmpr
 
Berichten: 253
Geregistreerd: 20 jan 2008 20:32

Re: [js]Email validatie

Berichtdoor frizzy » 16 apr 2009 17:25

Dankje (k)
frizzy
wmpr
 
Berichten: 4261
Geregistreerd: 20 sep 2006 16:03
Woonplaats: Boskoop :D

Re: [js]Email validatie

Berichtdoor Stefan » 24 mei 2009 13:38

Hier was toch ook gewoon een PHP 5 functie voor? (in een kleine functie gebouwd)

Code: Selecteer alles
function isEmail($string){
    return 
filter_var($string FILTER_VALIDATE_EMAIL);


Hierbij returned ie false of true...
Opzoek naar een webdesigner? http://webtilize.net/
Avatar gebruiker
Stefan
wmpr
 
Berichten: 406
Geregistreerd: 27 dec 2007 14:08
Woonplaats: Ter Aar

Re: [js]Email validatie

Berichtdoor Derk » 25 mei 2009 14:28

Als je het in javascript doet dan kan je een error geven voordat de gebruiker het form heeft gesubmit. Dit geeft dus een netter resultaat.
Afbeelding
Avatar gebruiker
Derk
Beheerder
Beheerder
 
Berichten: 12634
Geregistreerd: 27 nov 2003 19:50
Woonplaats: Houten

Re: [js]Email validatie

Berichtdoor frizzy » 25 mei 2009 15:03

Maar PHP heb je ook nodig voor de veiligheid ;)
frizzy
wmpr
 
Berichten: 4261
Geregistreerd: 20 sep 2006 16:03
Woonplaats: Boskoop :D

Re: [js]Email validatie

Berichtdoor Remi » 25 mei 2009 15:27

Dus daarom doe je het allebei, en gebruik je in beide gewoon dezelfde regex.
Avatar gebruiker
Remi
wmpr
 
Berichten: 3010
Geregistreerd: 04 apr 2006 15:22

Re: [js]Email validatie

Berichtdoor Stefan » 25 mei 2009 18:48

Derk schreef:Als je het in javascript doet dan kan je een error geven voordat de gebruiker het form heeft gesubmit. Dit geeft dus een netter resultaat.


Je kan dus eigen wel zeggen (wat Frank ook zegt) dat je beide functies nodig hebt, de javascript voor het "live" controleren van de email en vervolgens de email laten controleren door php (voor het geval iemand zijn javascript uit heeft staan)
Opzoek naar een webdesigner? http://webtilize.net/
Avatar gebruiker
Stefan
wmpr
 
Berichten: 406
Geregistreerd: 27 dec 2007 14:08
Woonplaats: Ter Aar

Re: [js]Email validatie

Berichtdoor DoubleJ » 26 mei 2009 11:10

Het grote voordeel van javascript validatie is dat je de gebruiker van fouten op de hoogte kan brengen voordat je een pagina verstuurd en op een antwoord moet wachten waarin de fouten vermeld staan. Dit kan dus zorgen voor een betere gebruikers ervaring.

Server-side validatie is gewoon een must, niet alleen om een gebruiker op zijn fouten te attenderen na het versturen, maar ook vanwege het stukje veiligheid.

Stefan schreef:
Derk schreef:Als je het in javascript doet dan kan je een error geven voordat de gebruiker het form heeft gesubmit. Dit geeft dus een netter resultaat.


Je kan dus eigen wel zeggen (wat Frank ook zegt) dat je beide functies nodig hebt, de javascript voor het "live" controleren van de email en vervolgens de email laten controleren door php (voor het geval iemand zijn javascript uit heeft staan)
De wondere wereld van het wijde web.
Avatar gebruiker
DoubleJ
wmpr
 
Berichten: 253
Geregistreerd: 20 jan 2008 20:32

Re: [js]Email validatie

Berichtdoor Derk » 31 mei 2009 21:00

Ik vraag me af of het uit maakt of als iemand javascript uit zet om de check te omzeilen het uitmaakt dat er dan een fout mail adres in je systeem staat. Die gaat dan nooit zijn validatie mailtje krijgen of andere mails. Hij heeft dus alleen zichzelf ermee. Tenminste, ik neem aan dat je het mail adres gaat gebruiken voor iets wat de gebruiker ook wil, anders spam je ermee.

Met andere woorden, client side en dan server side voor veiligheid? Lijkt me niet echt boeiend...

Tenzij je ook mensen mee wilt nemen die geen javascript hebben omdat ze in windows 3.11 browsen (of FF hebben en die plugin gebruiken).
Afbeelding
Avatar gebruiker
Derk
Beheerder
Beheerder
 
Berichten: 12634
Geregistreerd: 27 nov 2003 19:50
Woonplaats: Houten

Re: [js]Email validatie

Berichtdoor DoubleJ » 01 jun 2009 18:23

Derk schreef:Ik vraag me af of het uit maakt of als iemand javascript uit zet om de check te omzeilen het uitmaakt dat er dan een fout mail adres in je systeem staat. Die gaat dan nooit zijn validatie mailtje krijgen of andere mails. Hij heeft dus alleen zichzelf ermee. Tenminste, ik neem aan dat je het mail adres gaat gebruiken voor iets wat de gebruiker ook wil, anders spam je ermee.

Met andere woorden, client side en dan server side voor veiligheid? Lijkt me niet echt boeiend...

Tenzij je ook mensen mee wilt nemen die geen javascript hebben omdat ze in windows 3.11 browsen (of FF hebben en die plugin gebruiken).

Ik geloof dat je de strekking van mijn verhaal een beetje ontgaan is.

Server-side validatie, kun je niet omheen. Jij vraagt om zekere informatie van de gebruiker, dus moet je deze, voor zover mogelijk, valideren. Als jij toestaat dat een gebruiker foute antwoorden in jouw database plaatst en vervolgens krijgt hij geen antwoord, is dit niet bepaald een vriendelijke oplossing.

Daarnaast is server-side validatie nodig om eventuele veiligheidsaspecten aan te pakken. Oftewel ervoor zorgen dat een kwaadwillende gebruiker onder geen enkele omstandigheid ongewenste data in het formulier kan plaatsen.

Door server-side validatie, te plegen en deze eventueel ook nog aan de gebruiker terug te koppelen, sla je twee vliegen in 1 klap. Ten eerste wordt het invullen van het formulier van de gebruiker gebruiksvriendelijker omdat deze op zijn fouten gewezen wordt en daarnaast vang je eventuele aanvallen af.

Dan komen we bij het stukje van het javascript. Wanneer een gebruiker eerst een formulier naar de server moet sturen, en dan daar wachten op een reactie, kan dit leiden tot een soort van ongenoegen. Vandaar dat we dan met javascript op de PC van de gebruiker al een validatie van te voren kunnen doen, zodat we de gebruiker direct van zijn fouten op de hoogte kunnen stellen en dat deze niet hoeft te wachten, eventueel geef je er ook nog tooltips of soortgelijke feedback bij. Dit zorgt voor een betere gebruikers ervaring.

Om dus tot een conclusie te komen is het mijn insziens wel degelijk nodig om beide validaties toe te passen. De ene vanuit het oogpunt van veiligheid, en zorgen dat de basis van je systeem voor iedereen werkt. Het tweede om te zorgen dat jouw webpagina een gebruiksvriendelijkere afhandeling heeft.

---- NOTITIE ----
Misschien is het leuk om het gesprek af te splitsen naar een discussie forum, omdat we een beetje van de snippets afwijken.
De wondere wereld van het wijde web.
Avatar gebruiker
DoubleJ
wmpr
 
Berichten: 253
Geregistreerd: 20 jan 2008 20:32

Re: [js]Email validatie

Berichtdoor KillerSponge » 01 jun 2009 19:43

Waar het Derk om gaat, is dat als de gebruiker de client-side javascript validatie omzeilt, hij in veel gevallen (bv. bij een e-mail adres) alleen zichzelf er mee heeft. Het maakt voor veiligheid niet zoveel uit wat je precies in de database zet (er van uitgaande dat je queries e.d. goed zijn). In het ergste geval heeft de gebruiker een probleem: in dit geval 'zijn eigen schuld', omdat ie de javascript validatie heeft omzeilt.

Is wat voor te zeggen, maar is toch niet erg netjes. Ik doe zelf over het algemeen alleen server-side validatie (te lui om javascript validatie te doen).
Blabla en andere onzin - http://killersponge.nl
Avatar gebruiker
KillerSponge
Beheerder
Beheerder
 
Berichten: 14456
Geregistreerd: 24 aug 2004 13:05

Re: [js]Email validatie

Berichtdoor Derk » 01 jun 2009 22:35

Dacht dat ik toch ongeveer hetzelfde zei als killer, maargoed, dat bedoel ik inderdaad.

Tevens komt daar nog eens bij dat er altijd zo op gehamerd wordt dat het mail adres goed moet zijn (anders mis je die achterlijke activatie mailtjes) dat de meesten het toch wel goed invullen. Is je website voor de doelgroep die twee linker handen heeft met computers (oid) dan is een beveiliging wel handig. Maar ook dan vind ik dubbelop niet nodig.


Een website hacken doe je niet met een vals e-mail adres opgeven, daar is meer voor nodig.
Afbeelding
Avatar gebruiker
Derk
Beheerder
Beheerder
 
Berichten: 12634
Geregistreerd: 27 nov 2003 19:50
Woonplaats: Houten


Keer terug naar Snippets



cron