IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vérification e-mail dans formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut Vérification e-mail dans formulaire
    Bonjour à tous,

    J'ai vu le code suivant dans les tutos, pour vérifier la validité des adresses emails dans les formulaires :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $email = "nom@domaine.com";
    if (preg_match($regex, $email)) {
        echo "L'adresse $email est valide";
    } else {
        echo "L'adresse $email n'est pas valide";
    }
    ?>
    J'ai un formulaire que j'utilise actuellement et j'essaye sans résultat d'inclure la vérification de l'email. Pourriez-vous m'aider ?

    Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?php
    $nom = isset($_POST['nom'])?$_POST['nom']:'';
    $prenom = isset($_POST['prenom'])?$_POST['prenom']:'';
    $email = isset($_POST['email'])?$_POST['email']:'';
    $contenu = isset($_POST['contenu'])?$_POST['contenu']:'';
    $erreur1 = '<p class="alerte1">Veuillez indiquer votre nom'; 
    $erreur2 = '<p class="alerte2">Veuillez indiquer votre prénom';
    $erreur3 = '<p class="alerte3">Veuillez indiquer votre email';
    $erreur4 = '<p class="alerte4">Veuillez indiquer votre message';
     
    if(isset($_POST['action']) && !empty($nom)&&!empty($prenom)&&!empty($email)&&!empty($contenu))
    {
        $destinataire = 'test@test.com';
        $titre= "Demande de contact";
        $headers = 'From: '.$email.' <'.$email.'>'."\r\n";
        $message = "";
        $message .= "nom: ".$nom."\n";
        $message .= "prenom: ".$prenom."\n";
        $message .= "email: ".$email."\n";
        $message .= "contenu: ".$contenu."\n";
     
        if(mail($destinataire,$titre,$message,$headers))
          echo "<script>window.location='confirmation.php'</script>";
    }
    ?>

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?php
    $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
     
    $nom = isset($_POST['nom'])?$_POST['nom']:'';
    $prenom = isset($_POST['prenom'])?$_POST['prenom']:'';
    $email = isset($_POST['email'])?$_POST['email']:'';
    $contenu = isset($_POST['contenu'])?$_POST['contenu']:'';
    [...]
     
    if(isset($_POST['action']) && !empty($nom)&&!empty($prenom)&&!empty($email)&&!empty($contenu)) {
     if (preg_match($regex, $email)) {
        $destinataire = 'test@test.com';
        $titre= "Demande de contact";
        $headers = 'From: '.$email.' <'.$email.'>'."\r\n";
        $message = "";
        $message .= "nom: ".$nom."\n";
        $message .= "prenom: ".$prenom."\n";
        $message .= "email: ".$email."\n";
        $message .= "contenu: ".$contenu."\n";
     
         if(mail($destinataire,$titre,$message,$headers)) {
           echo "<script>window.location='confirmation.php'</script>";
         }
     }
     else {
      $erreur3='<p class="alerte3">Mail non conforme</p>';
     }
    }
     
    ?>
    Bonne soirée.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    Merci SpiritOfDoc

    Juste un petit problème: dès le chargement de ma page, j'ai le message "Mail non valide" qui s'affiche alors que tous les champs sont vides.

    Ensuite, et je ne sais pas si c'est possible serait de mettre le message "Veuillez indiquer votre email" si le champ est vide ou "Mail non valide" s'il est invalide".
    du type j'affiche $erreur3 si vide ou $erreur5 si l'email est invalide.

    Merci encore !

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Par défaut
    Voilà j'ai corrigé si dessus pour obtenir ce que tu voulais.

    Au lieu d'ajouter une énième variable, j'ai juste modifier le contenu de $erreur3.

    Bonne soirée.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 78
    Par défaut
    Thanks

    Bon le test de l'adresse email fonctionne impec

    J'ai juste un dernier problème: le message d'erreur "Mail non conforme" ne s'affiche pas s'il y a une erreur.

    Merci

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Par défaut
    Tu as bien fais un echo du $erreur3 quelque part ?

Discussions similaires

  1. Vérification de champs dans formulaire
    Par jquery dans le forum jQuery
    Réponses: 3
    Dernier message: 19/12/2013, 00h59
  2. Vérification format adresse mail dans formulaire
    Par tomtom59110 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 25/08/2013, 10h31
  3. Vérification données saisie dans formulaire
    Par smotte761 dans le forum Langage
    Réponses: 8
    Dernier message: 02/05/2011, 19h56
  4. vérification d'une adresse mail dans un formulaire via une regexp
    Par mattstriker dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/04/2008, 20h12
  5. Insertion d'adresse mail dans formulaire MS Access
    Par Gabe74 dans le forum Access
    Réponses: 1
    Dernier message: 06/09/2006, 14h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo