Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak sprawdzic czy dany string jest e-mail'em ?
Leon_DJ
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 28.01.2004
Skąd: Bromberg (obecna Bydgoszcz)

Ostrzeżenie: (0%)
-----


Witam,
jak sprawdzic czy dany string wpisany
w formularzu jest e-mail'em ?

Chodzi o to, gdy ktos wpisze w polu przeznaczonym
na e-mail cos innego, to zeby stronka go "nawrocila"
komunikatem ze wpisany tekst nie jest e-mailem
i zeby mogl poprawic na wlasciwy

z gory dziekuje i pozdrawiam
Leon_DJ
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nediam
post
Post #2





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 30.01.2004

Ostrzeżenie: (0%)
-----


  1. <?php
  2. // Funkcja sprawdzajaca poprawnosc maila 
  3. function check_mail($email) 
  4. { 
  5. $regexp = &#092;"/^([[:alnum:]]([[:alnum:]_.:-])?)+@([[:alnum:]][[:alnum:]_.:-]+[[:alnum:]].)?((([[:alnum:]]([[:alnum:]_.:-]{1,59})?[[:alnum:]])|[[:alnum:]]).)([a-z]{2,4}|[0-9]{1,3})$/i\"; 
  6. $email = strtolower($email); 
  7.  
  8. if(preg_match($regexp, $email)) 
  9.  $check = '<font color=green>OK</font>'; 
  10. else 
  11.  $check = '<font color=red>nie OK</font>'; 
  12.  
  13. return $check; 
  14. }; 
  15. ?> 
  16.  
  17. <form action=\"/testy/?id=4\" method=post> 
  18. <p> 
  19. Podaj propozycje maila do sprawdzenia: 
  20. <input name=mail type=text value=\"<? echo $_POST['mail'] ?>\" size=20 class=form> 
  21. <input type=submit name=submit value=\"Sprawdz\" class=formb> 
  22. </p> 
  23. </form> 
  24. <? 
  25. if($_POST['submit']) 
  26.  { 
  27.  echo '<b>Mail podany przez ciebie:</b><br>'; 
  28.  echo $_POST['mail'] . ' &raquo; '; 
  29.  echo check_mail($_POST['mail']); 
  30.  echo '<br><br>'; 
  31.  } 
  32.  
  33. // Sprawdzmy czy dzialaja maile przykladowe 
  34. $maile[] = 'jaNek@wp.Pl'; 
  35. $opis[] = 'OK - litery mogą być duże i małe'; 
  36. $maile[] = 'jaNek_79-80@wp-79_80.Pl'; 
  37. $opis[] = 'OK - użytkownik może być z \"-\" i \"_\"'; 
  38. $maile[] = 'jaNek.8@wp.Pl'; 
  39. $opis[] = 'OK - użytkownik może być z \".\"'; 
  40. $maile[] = 'jaNek:79@wp.Pl'; 
  41. $opis[] = 'OK - użytkownik może być z \":\"'; 
  42. $maile[] = 'jaNek.8@wp.jaNek'; 
  43. $opis[] = 'nie OK - nie ma takiej domeny 5 literowej'; 
  44. $maile[] = 'jaNek@e-janek.wp.Pl'; // thx to Michal 
  45. $opis[] = 'OK - nazwa domeny może zawierać \"-\"'; 
  46. $maile[] = 'jaNek@-janek.Pl'; 
  47. $opis[] = 'nie OK - domena nie może się zaczynać od \"-\"'; 
  48. $maile[] = 'jaNek@poseł.Pl'; 
  49. $opis[] = 'nie OK - domena nie może mieć polskich liter'; 
  50. $maile[] = 'jaNek@w'; 
  51. $opis[] = 'nie OK - brak domeny'; 
  52. $maile[] = 'jaNek@w.Z'; 
  53. $opis[] = 'nie OK - nie ma takiej domeny 1 literowej'; 
  54. $maile[] = 'janek@149.156.124.13'; // thx to Hassan 
  55. $opis[] = 'OK - domena może być w postaci adresu IP'; 
  56. $maile[] = 'janek@jestem-janek-fajny-gosc-mam-na-dzis-wszystkiego-dosc-wiec-juz-koncze-na-dzis.pl'; //thx to mati 
  57. $opis[] = 'nie OK - domena może mieć max 63 znaki'; 
  58. $maile[] = 'janek@wp..pl'; 
  59. $opis[] = 'nie OK - błędna domena'; 
  60.  
  61. echo '<b>Maile przykładowe:</b><br>'; 
  62. for($n=0;$n<count($maile);$n++) 
  63. { 
  64. echo $maile[$n]; 
  65. echo ' <font class=male>(powinno być: ' . $opis[$n] . ')</font> &raquo; '; 
  66. echo check_mail(&#092;"$maile[$n]\"); 
  67. echo '<br>'; 
  68. }; 
  69. ?>


Ten post edytował nediam 23.10.2004, 15:02:42
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 16:25