Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][PHP]Problem z wyrażeniami regularnymi sprawdzającymi email
Forum PHP.pl > Forum > Przedszkole
sebap123
Witam,

Na stronie portalu php.pl znalazłem poradnik jak weryfikować adres e-mail. Była tam umieszczona w sumie prosta funkcja, która zawierała wyrażenie regularne sprawdzające budowę adresu.
Postanowiłem to samo dodać do swojego formularza, który wysyła dane do weryfikacji przy pomocy AJAXA i jQuery. Niestety, nie mogę jakoś uzyskać żądanego efektu ponieważ cały czas wyrzuca mi błąd, sugerujący, że adres nie przechodzi przez walidacje wyrażeniami. W na innych stronach znalazłem ten sam kod tak więc, raczej nie w tym błąd, a prędzej w metodzie przesyłu do samego skryptu. Tyletylko, że nie wiem jak to poprawić.

Tak wyglądają kody:
test2.php
  1. $email = $_POST['email'];
  2. if(preg_match("/^( [a-zA-Z0-9] )+( [a-zA-Z0-9\._-] )*@( [a-zA-Z0-9_-] )+( [a-zA-Z0-9\._-] +)+$/" , $email))
  3. {
  4. list($username,$domain)=split('@',$email);
  5. if(!checkdnsrr($domain,'MX'))
  6. {
  7. echo "false2";
  8. exit();
  9. }
  10. echo "true";
  11. exit();
  12. }
  13. echo "false1";
  14. exit();

kod js wysyłający ajaxa:
[JAVASCRIPT] pobierz, plaintext
  1. var text = email.val();
  2. var request = $.ajax({
  3. type:"POST",
  4. url:"test2.php",
  5. data:"email="+text,
  6. success:finishSuccess,
  7. error:function(XMLHttpRequest, textStatus, errorThrown)
  8. {
  9. alert("Wystapił bład");
  10. }
  11. });
  12. function finishSuccess(response)
  13. {
  14. alert("napis: "+response);
  15. }
[JAVASCRIPT] pobierz, plaintext

Sprawdziłem, jak zwrócę sam email w echo to email jest ten który podałem. Cały czas zwraca mi false1.
Czy może mi ktoś coś doradzić?
Sephirus
Przede wszystkim powywalaj spacje z preg_matcha... z wyrażenia...
sebap123
Dzięki, tu był błąd.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.