Bun venit pe SkullBox!

Bine ai venit, Vizitator. Trebuie să te autentifici sau să îţi creezi un cont.
Ai pierdut sau nu ai primit emailul care conţine codul de activare al contului?

Autentifică-te cu numele de utilizator, parola şi precizează durata sesiunii.
  Pagini: [1]
  Imprimă  
Valideaza EMail in PHP  (Vizualizari 1307)
Agkelos
*

Deconectat Deconectat

Mesaje: 5229

WWW
Valideaza EMail in PHP, Mai 12, 2007, 21:36

Functia de validare adresa de E-Mail se foloseste de functia validDomain(), deci trebuie inclusa inainte sa o puteti folosi.

Userul poate fi format doar din caracterele {a-z0-9._-}. Ca sa se accepte si altele trebuie modificat in ereg().

Cod:
function validMail($mail){
// Returneaza True daca e valida adresa de mail
// Returneaza False daca nu e valida
$mail = explode('@',$mail);
// Se separa stringurile folosind ca delimitator @
// Trebuie sa fie cel mult doua parti
// Daca sunt mai mult de doua string-uri in array-ul rezultat
// sunt mai mult semne @, deci nu e adresa valida
if( count($mail) > 2 ) return False;

// Domeniul trebuie sa fie valid
// Se accepta doar mailuri de pe domenii, nu si subdomenii
if( !validDomain($mail[1]) ) return False;

// Se pot adauga in lista si alte caractere.
// Default sunt permise doar cele mai folosite
if( !eregi('^[a-z0-9._-]{1,64}$',$mail[0]) ) return False;
return True;
}
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
soltare
*

Deconectat Deconectat

Mesaje: 275

WWW
Valideaza EMail in PHP, Mai 13, 2007, 07:44

Sal',
Chiar imi trebuia o idee. M-ai scutit de munca, ca trebuia sa scot PHP-ul de la naftalina Big grin Aveam un cod facut de mine, dar nu verifica domenii si doar daca respecta caractere@caractere.caractere (adica @ si .). Al tau este mai complex. Acum sa vad cum imi amintesc PHP cu functiile ca sa includ functia ta Winking
Ce batai de cap mi-a mai dat o chestie: PHP si atasamentele la mail, dar am impresia ca am mai vazut chestia asta pe forum, deci nu te stresez Big grin
Memorat
Agkelos
*

Deconectat Deconectat

Mesaje: 5229

WWW
Valideaza EMail in PHP, Mai 13, 2007, 09:29

Well... cand nu te descurci, shoot ! Winking
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
Teal
*

Deconectat Deconectat

Mesaje: 602

WWW
Valideaza EMail in PHP, Iun 19, 2008, 19:26

Cod:
function validMail($mail){
    $mail = explode('@',$mail);
    if( count($mail) > 2 || count($mail) == 1) return false;
    if( !validDomain($mail[1]) ) return false;
    if( !eregi('^[a-z0-9._-]{1,64}$',$mail[0]) ) return false;
    return true;
}
eu zic ca trebuie si linia asta Big grin
Cod:
if( count($mail) > 2 || count($mail) == 1) return false;
Memorat


"Not only the wisdom of centuries — also their madness breaketh
out in us. Dangerous is it to be an heir."

Nietzsche
Agkelos
*

Deconectat Deconectat

Mesaje: 5229

WWW
Valideaza EMail in PHP, Iun 19, 2008, 20:05

I don't get it  :/
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
AdyX
*

Deconectat Deconectat

Mesaje: 1062

WWW
Valideaza EMail in PHP, Iun 19, 2008, 20:48

Cred ca se refera la cazul in care nu exista niciun "@".
Memorat
Agkelos
*

Deconectat Deconectat

Mesaje: 5229

WWW
Valideaza EMail in PHP, Iun 19, 2008, 21:03

Da... dar nu prea are sens pentru ca in cazul in care are mai putin de doua elemente va da eroare la urmatoarea verificare - un string de lungime zero nu poate fi un domeniu valid.
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
AnDrEwBoY
*

Deconectat Deconectat

Mesaje: 19

Valideaza EMail in PHP, Iul 04, 2008, 20:13

Aceasta este functia pe care o folosesc eu....mai lunga dar mai eficienta:)

Cod:
function valid_email($email) {/
  // verificam dak exista un singur @ si dak lungimea e buna
  if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
    return false;
  }
  // impartim in mai multe parti:)
  $email_array = explode("@", $email);
  $local_array = explode(".", $email_array[0]);
  for ($i = 0; $i < sizeof($local_array); $i++) {
     if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
      return false;
    }
  }  
  if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { verificam daca avem ip dak nu ar trebui sa fie domeniu
    $domain_array = explode(".", $email_array[1]);
    if (sizeof($domain_array) < 2) {
        return false;
    }
    for ($i = 0; $i < sizeof($domain_array); $i++) {
      if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
        return false;
      }
    }
  }
  return true;
}
Memorat
detective
*

Deconectat Deconectat

Mesaje: 130

Valideaza EMail in PHP, Sep 18, 2008, 20:58

Citat din mesajul lui: AnDrEwBoY
Aceasta este functia pe care o folosesc eu....mai lunga dar mai eficienta:)

Cod:
function valid_email($email) {/
  // verificam dak exista un singur @ si dak lungimea e buna
  if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
    return false;
  }
  // impartim in mai multe parti:)
  $email_array = explode("@", $email);
  $local_array = explode(".", $email_array[0]);
  for ($i = 0; $i < sizeof($local_array); $i++) {
     if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
      return false;
    }
  }  
  if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { verificam daca avem ip dak nu ar trebui sa fie domeniu
    $domain_array = explode(".", $email_array[1]);
    if (sizeof($domain_array) < 2) {
        return false;
    }
    for ($i = 0; $i < sizeof($domain_array); $i++) {
      if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
        return false;
      }
    }
  }
  return true;
}
As dori sa folosesc si eu snippet-ul de mai sus sa imi verific input-ul adresei de e-mail dintr-un formular pe care il am pe un site, cum apelez la acea functie de mai sus ca sa verific ?
De ex input-ul adresei de e-mail vine in $adresa prin cod-ul
Cod:
$adresa = $_POST['email'];
Cum fac sa arate de genu;

Cod:
If
Invalid - Echo "Introdu o adresa de e-mail valida!!"
else
continua cod
Ma intereseaza in special acea ordine cu false-ul primul si al 2-lea sa fie true-ul, pt ca asa mi-e mai usor sa inteleg, stilul acesta de cascada, fiind incepator.

multumesc anticipat
Memorat
AdyX
*

Deconectat Deconectat

Mesaje: 1062

WWW
Valideaza EMail in PHP, Sep 19, 2008, 17:46

Cod:
if(!valid_email($_POST['email'])) echo 'Invalida';
else echo 'Merge';
Memorat
detective
*

Deconectat Deconectat

Mesaje: 130

Valideaza EMail in PHP, Sep 26, 2008, 21:21

Am reusit, ms
Memorat
Y2K
*

Deconectat Deconectat

Mesaje: 156

WWW
Răspuns: Valideaza EMail in PHP, Dec 02, 2008, 22:58

Citat
Parse error: syntax error, unexpected '/' in /home/XXXXXXXX/public_html/1111.php on line 25

de la 25 incepe :




Cod:
function valid_email($email) {/
  // verificam dak exista un singur @ si dak lungimea e buna
  if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
    return false;
  }
  // impartim in mai multe parti:)
  $email_array = explode("@", $email);
  $local_array = explode(".", $email_array[0]);
  for ($i = 0; $i < sizeof($local_array); $i++) {
     if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
      return false;
    }
  } 
  if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { verificam daca avem ip dak nu ar trebui sa fie domeniu
    $domain_array = explode(".", $email_array[1]);
    if (sizeof($domain_array) < 2) {
        return false;
    }
    for ($i = 0; $i < sizeof($domain_array); $i++) {
      if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
        return false;
      }
    }
  }
  return true;
}

de ce imi zice asa ? Straight face
Memorat

Sa Mori Pentru Patrie ? Astea-s POVESTI


Agkelos
*

Deconectat Deconectat

Mesaje: 5229

WWW
Răspuns: Valideaza EMail in PHP, Dec 02, 2008, 23:05

Ai un / la sfarsitul liniei care nu are ce cauta acolo Smile
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
Y2K
*

Deconectat Deconectat

Mesaje: 156

WWW
Răspuns: Valideaza EMail in PHP, Dec 02, 2008, 23:20

gata am reusit defapt ....

trebuie pus si

if(!valid_email($_POST['email'])) exit('Adresa de email invalida');


alfel trimite si daca e invalida ... Tongue thanx all Love struck
« Ultima modificare: Dec 02, 2008, 23:27 de către Y2K » Memorat

Sa Mori Pentru Patrie ? Astea-s POVESTI


AnDrEwBoY
*

Deconectat Deconectat

Mesaje: 19

Răspuns: Valideaza EMail in PHP, Dec 11, 2008, 10:38

este si normal acea verificare(care ai facut`o tu) verifica daca e invalid si daca da atunci opreste executia...Cu ce e gresit? utilizarea e simpla

Cam asta ar fi,dupa cum spunea si cineva mai jos:
if(!valid_email($_POST['email'])) echo 'Invalida';
else echo 'Merge';

Memorat
SkullAds
Ecspert
ReclAmator
* * * * *
Google AdSense

Gen: Bărbat
Mesaje: Multe

Reclama AdSense,
 

 
   


Pagini: [1]
  Imprimă  
 
Schimbă forumul:  

Ethical hacking and programming community
Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC
Traducerea în limba română © 2006-2007 www.smf.ro