login  Naam:   Wachtwoord: 
Registreer je!
Scripts > PHP > Reguliere expressies > E-mail controle


Reacties op het script E-mail controle

Offline  webstab
Gepost op: 05 september 2004 - 12:14
PHP ver gevorderde



hij doet het niet bij mij.
er komt altijd dat het emailadres niet bestaat.
script forum:
  1. <form action="" method="post" name="formuliergastenboek">
  2. <table>
  3. <tr><td>je naam:</td><td colspan=2><input type=text size=30 name=naam value=<?php echo @$_POST[naam]; ?>></td></tr>
  4. <tr><td>je emailadres:</td><td colspan=2><input type=text size=30 name=emailadres value=<?php echo @$_POST[emailadres]; ?>></td></tr>
  5. <tr><td>je website:</td><td colspan=2><input type=text size=30 name=website value=<?php echo @$_POST[website]; ?>>(niets invullen als je geen website hebt)</td></tr>
  6. <tr><td>je woonplaats:</td><td colspan=2><input type=text size=30 name=woonplaats value=<?php echo @$_POST[woonplaats]; ?>>(niets invullen als je dit privé vindt)</td></tr>
  7. <tr><td>onderwerp:</td><td colspan=2><input type=text size=30 name=onderwerp value=<?php echo @$_POST[onderwerp]; ?>></td></tr>
  8. <tr><td valign=top>je bericht:</td><td>
  9. <textarea name="bericht" cols="30" rows="5" id="bericht"><?php echo @$_POST[bericht]; ?></textarea></td><td>
  10. <input type="button" name="b" value="B" style="font-weight: bold; width: 20px;" onClick="javascript:Invoegen('[B]...[/B]');">
  11. <input type="button" name="u" value="U" style="text-decoration: underline; width: 20px;" onClick="javascript:Invoegen('[U]...[/U]');">
  12. <input type="button" name="i" value="I" style="font-style: italic; width: 20px;" onClick="javascript:Invoegen('[I]...[/I]');">
  13. <input type="button" name="url" value="Link" onClick="javascript:Invoegen('[URL=http://...]...[/URL]');">
  14. <input type="button" name="color" value="Kleur" onClick="javascript:Invoegen('[COLOR=...]...[/COLOR]');">
  15. <input type="button" name="size" value="Grootte" onClick="javascript:Invoegen('[SIZE=...]...[/SIZE]');">
  16. <br>
  17. <a href="javascript:smiley();" onClick="javascript:Invoegen(':)');"><img src="<?php echo $map ?>/blij.gif" width="20" border="0"></a>
  18. <a href="javascript:smiley();" onClick="javascript:Invoegen(':D');"><img src="<?php echo $map ?>/tanden.gif" width="20" height="20" border="0"></a>
  19. <a href="javascript:smiley();" onClick="javascript:Invoegen(':P');"><img src="<?php echo $map ?>/tong.gif" width="20" height="20" border="0"></a>
  20. <a href="javascript:smiley();" onClick="javascript:Invoegen(';)');"><img src="<?php echo $map ?>/knipoog.gif" width="20" height="20" border="0"></a>
  21. <a href="javascript:smiley();" onClick="javascript:Invoegen(':cool:');"><img src="<?php echo $map ?>/cool.gif" width="20" height="20" border="0"></a>
  22. <a href="javascript:smiley();" onClick="javascript:Invoegen(':s');"><img src="<?php echo $map ?>/verward.gif" width="20" height="20" border="0"></a>
  23. <a href="javascript:smiley();" onClick="javascript:Invoegen(':omg:');"><img src="<?php echo $map ?>/omg.gif" width="20" height="20" border="0"></a>
  24. <a href="javascript:smiley();" onClick="javascript:Invoegen(':(');"><img src="<?php echo $map ?>/droevig.gif" width="20" height="20" border="0"></a>
  25. </td></tr>
  26. <tr>
  27. <td></td>
  28. <td>
  29. <input type=submit name=submit value=post>
  30. <input type=reset name=reset value=wis>
  31. </td></tr></table>
  32. </form>

script emailcheck:
  1. if (@$_POST['submit']) {
  2. function control_email($address) {
  3. list($local, $host) = explode("@", $address);
  4. $pattern_local = "^([0-9a-z]*([-|_]?[0-9a-z]+)*)(([-|_]?)\.([-|_]?)[0-9a-z]*([-|_]?[0-9a-z]+)+)*([-|_]?)$";
  5. $pattern_host = "^([0-9a-z]+([-]?[0-9a-z]+)*)(([-]?)\.([-]?)[0-9a-z]*([-]?[0-9a-z]+)+)*\.[a-z]{2,4}$";
  6. $match_local = eregi($pattern_local, $local);
  7. $match_host = eregi($pattern_host, $host);
  8.  
  9. if($match_local && $match_host) {
  10. return 1;
  11. } else {
  12. return 0;
  13. }
  14. }
  15. $error="";
  16. if (!trim($_POST['naam'])) {
  17. $error="Je moet je naam invullen";}
  18. elseif(control_email("info@sitemasters.be")) {
  19. $error="Je moet een geldig emailadres invullen"; }
  20. elseif (!trim($_POST['bericht'])) {
  21. $error="Je moet een bericht invullen"; }

en er komt altijd "je moet een geldig emailadres invullen"
wat is er fout?

Offline  webstab
Gepost op: 06 september 2004 - 21:04
PHP ver gevorderde



sorry,maar dit doet het ook niet

Offline  webstab
Gepost op: 07 september 2004 - 17:52
PHP ver gevorderde



sorry,maar dat staat er al,die fout had ik al gevonden.
maar ik geef het langzaam op,wnt ik ben er al ff mee bezig.
tenzij jij nog iets weet,anders is het gastenboek zonder emailcheck

Offline  Maarten
Gepost op: 21 december 2004 - 23:43
Erelid



Euhm welke van de twee is volgens jou de beste? 

Offline  Fenrir
Gepost op: 09 februari 2005 - 19:55
PHP expert



Maakt niet veel uit denk ik.
Maar wss is de 1e sneller.

Offline  RsK
Gepost op: 06 september 2005 - 18:11
Nieuw lid



en als je nou dubbele extensies hebt zoals @hotmail.co.jp?? 
ik gebruik:
ereg("^[a-z0-9_-]+([\.]{1}[a-z0-9_-]+)*@[a-z0-9_-]+([\.]{1}[a-z0-9_-])*([\.]{1}[a-z]{1,4})+([\.]{1}[a-z]{1,4})*$", $email)
zelf gemaakt dus er kan een fout in zitten  :!: 
@hotmail.c kan en @hotmail.info.huis kan 

Offline  Maarten
Gepost op: 18 september 2005 - 16:24
Erelid



Dan neem je maar een degelijk e-mailadres 

Offline  Thomas
Gepost op: 19 september 2005 - 07:35
Moderator



Dan schrijf je je eigen uitbreiding eh.

Offline  Ibrahim
Gepost op: 18 juli 2006 - 22:20
PHP expert



[a-zA-Z0-9_-] kan natuurlijk korter, namelijk met de de 2 tekens \w. dat is dus veel kleiner 

Offline  Thomas
Gepost op: 19 juli 2006 - 10:09
Moderator



Nope.
\w is synoniem voor a-z, 0-9 of een underscore. Maar geen "-".

Offline  Ibrahim
Gepost op: 19 juli 2006 - 16:55
PHP expert



[\w-]

voila 

Offline  ikki007
Gepost op: 15 oktober 2006 - 09:27
Gouden medailleGouden medaille

PHP ver gevorderde




is \w voor a-z en A-Z, dus voor niethoofdletters en welhoofdletters.

Offline  Thomas
Gepost op: 16 oktober 2006 - 10:10
Moderator



True. Bij mijn weten zijn e-mailadressen zelf niet case-sensitive, dus kun je alles net zo goed in lowercase schrijven. Bij de evaluatie kun je dus de strtolower()-variant gebruiken in de regexp-controle.


Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.043s