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 :

Tester des champs avant envoie mail


Sujet :

Langage PHP

  1. #21
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    bon

    comme je suis prudent j ai des backup:

    mon problème vient du test mail:

    ca test bien si le mail est valide ou pas mais si valide ben le mail ne part pas:
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
     
    <?php
     $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $courriel = $_POST['mail'];
     
     
    if(!empty($_POST)){
        //
        // Debug
        //
    if (preg_match($regex, $courriel)) {
        echo "L'adresse $courriel est valide";
    } else {
        echo "L'adresse $courriel n'est pas valide";  
    }
    //
        // Récupération normale des informations
        //
        $missing_fields = array();
        if(empty($_POST['nom'])){
            $missing_fields[] = '"Nom",';
        }
    	if(empty($_POST['prenom'])){
            $missing_fields[] = '"Prenom",';
        }
    	if(empty($_POST['Telephone'])){
            $missing_fields[] = '"Telephone",';
        }
    	if(empty($_POST['date'])){
            $missing_fields[] = '"Date",';
     
        }
     
     
     
        echo '<br /><br />';
    if(count($missing_fields) > 0){
        echo '<strong>Il faut remplir les champs suivants</strong>'.implode(  ',   '  , $missing_fields);
     
     
    }
     
    }
    else{
        // traitement
    je sur que ca viens du if mais je vois pas ou

    a+

  2. #22
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Salut,

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    <?php
     $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $courriel = $_POST['mail'];
     
     
    if(!empty($_POST)){
        //
        // Debug
        //
    if (preg_match($regex, $courriel)) {
        echo "L'adresse $courriel est valide";
    } else {
        echo "L'adresse $courriel n'est pas valide";  
    }
    //
        // Récupération normale des informations
        //
        $missing_fields = array();
        if(empty($_POST['nom'])){
            $missing_fields[] = '"Nom",';
        }
    	if(empty($_POST['prenom'])){
            $missing_fields[] = '"Prenom",';
        }
    	if(empty($_POST['Telephone'])){
            $missing_fields[] = '"Telephone",';
        }
    	if(empty($_POST['date'])){
            $missing_fields[] = '"Date",';
     
        }
     
     }
     
        echo '<br /><br />';
    if(count($missing_fields) > 0){
        echo '<strong>Il faut remplir les champs suivants</strong>'.implode(  ',   '  , $missing_fields);
     
     
    }
     
    else{
        // traitement
     }
    ?>

  3. #23
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    Bonjour

    merci

    mais ca envoie qund meme le mail si adresse invalide

    mais c'est certaiment du encore a moi

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
     
    <?php
     $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $courriel = $_POST['mail'];
     
     
    if(!empty($_POST)){
        //
        // Debug
        //
    if (preg_match($regex, $courriel)) {
        echo "L'adresse $courriel est valide";
    } else {
        echo "L'adresse $courriel n'est pas valide";  
    }
    //
        // Récupération normale des informations
        //
        $missing_fields = array();
        if(empty($_POST['nom'])){
            $missing_fields[] = '"Nom",';
        }
    	if(empty($_POST['prenom'])){
            $missing_fields[] = '"Prenom",';
        }
    	if(empty($_POST['Telephone'])){
            $missing_fields[] = '"Telephone",';
        }
    	if(empty($_POST['date'])){
            $missing_fields[] = '"Date",';
     
        }
     
     }
     
        echo '<br /><br />';
    if(count($missing_fields) > 0){
        echo '<strong>Il faut remplir les champs suivants</strong>'.implode(  ',   '  , $missing_fields);
     
     
    }
     
    else{
        // traitement
     }
     
    		if( isset($_POST['nom']) ) // si formulaire soumis
    	{
    		$to = 'rabi29@orange.fr'
    		;
    		$sujet = 'demande de Pre-reservation'
    		;
    		$from = $_POST['mail']
    		;
    		$nom = "Nom :".$_POST['nom']."\n\r"
    		;
    		$Prenom = "Prenom : ".$_POST['prenom']."\n\r"
    		;
          $Telephone = "Telephone :".$_POST['Telephone']."\n\r"
    		;   
    		$message = "\nMessage:\n\t$Prenom\n\t$nom\n\t$Telephone"
    		;
    		if (mail($to , $sujet , $message , "From: $from"))
    	{ 
     
    			echo'
    				<script type="text/javascript">
    				<!--
    					alert("Votre message a été envoyé .");
    				
    				//-->
    				
    				</script>'
    			;
     
     
     
     
     
     
    		}
    		else
    		{
    			echo'
    				<script type="text/javascript">
    				<!--
    					alert("Votre message n\'a pas pu être envoyé !!!");
    				//-->
    				</script>'
    			;
    		}
    		;
    		}
    	;
     ;
     
     
     
     
    echo '<br /><br />';
     
     
    ?>
    j ai mis le code en entier

    a+

    Ps cas de le dire neuneu1

  4. #24
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    <?php
     $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $courriel = $_POST['mail'];
     
     
    if(!empty($_POST)){
        //
        // Debug
        //
    if (preg_match($regex, $courriel)) {
        echo "L'adresse $courriel est valide";
    } else {
        echo "L'adresse $courriel n'est pas valide";  
    }
    //
        // Récupération normale des informations
        //
        $missing_fields = array();
        if(empty($_POST['nom'])){
            $missing_fields[] = '"Nom",';
        }
    	if(empty($_POST['prenom'])){
            $missing_fields[] = '"Prenom",';
        }
    	if(empty($_POST['Telephone'])){
            $missing_fields[] = '"Telephone",';
        }
    	if(empty($_POST['date'])){
            $missing_fields[] = '"Date",';
     
        }
     
     }
     
        echo '<br /><br />';
    if(count($missing_fields) > 0){
        echo '<strong>Il faut remplir les champs suivants</strong>'.implode(  ',   '  , $missing_fields);
     
     
    }
     
    else{
        // traitement
       if( isset($_POST['nom']) ) // si formulaire soumis{
    		$to = 'rabi29@orange.fr';
    		$sujet = 'demande de Pre-reservation';
    		$from = $_POST['mail'];
    		$nom = "Nom :".$_POST['nom']."\n\r";
    		$Prenom = "Prenom : ".$_POST['prenom']."\n\r";
                    $Telephone = "Telephone :".$_POST['Telephone']."\n\r";   
    		$message = "\nMessage:\n\t$Prenom\n\t$nom\n\t$Telephone";
    		if (mail($to , $sujet , $message , "From: $from"))
    	{ 
    	echo'
    	<script type="text/javascript">
    	<!--
    	alert("Votre message a été envoyé .");
    	//-->
    	</script>'; 
     
    		}
    		else
    		{
    			echo'
    				<script type="text/javascript">
    				<!--
    					alert("Votre message n\'a pas pu être envoyé !!!");
    				//-->
    				</script>'
    			;
    		}
    		}
    }
     
    echo '<br /><br />';
     
     
    ?>

  5. #25
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    Deja merci pour ton aide

    Mais bon je dois pas etre bon..

    le code marche si un champ est vide pas d envoie de mail

    mais si c'est l adresse qui est fausse ben ca part quand meme, le test est fait , j ai le message le mail n'est pas valide, mais ca part

    désole
    a+

  6. #26
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    re,

    j ai beau cherche

    si le mail est faux ca part

    j ai essayer de placer les test de champs dans mail valide, comme ca les test de champ se font si le mail est valide, ben non mail valide ou pas les tets champs se font.

    c'est bizzard

    a+

  7. #27
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    <?php
     $regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
    $courriel = $_POST['mail'];
     
     
    if(!empty($_POST)){
        //
        // Debug
        //
     
    //
        // Récupération normale des informations
        //
        $missing_fields = array();
        if (preg_match($regex, $courriel)) {
           $missing_fields[] = '"courriel",';
           echo "L'adresse $courriel est valide";
        } else {
           echo "L'adresse $courriel n'est pas valide";  
        }
        if(empty($_POST['nom'])){
            $missing_fields[] = '"Nom",';
        }
    	if(empty($_POST['prenom'])){
            $missing_fields[] = '"Prenom",';
        }
    	if(empty($_POST['Telephone'])){
            $missing_fields[] = '"Telephone",';
        }
    	if(empty($_POST['date'])){
            $missing_fields[] = '"Date",';
     
        }
     
     }
     
        echo '<br /><br />';
    if(count($missing_fields) > 0){
        echo '<strong>Il faut remplir les champs suivants</strong>'.implode(  ',   '  , $missing_fields);
     
     
    }
     
    else{
        // traitement
       if( isset($_POST['nom']) ) // si formulaire soumis{
    		$to = 'rabi29@orange.fr';
    		$sujet = 'demande de Pre-reservation';
    		$from = $_POST['mail'];
    		$nom = "Nom :".$_POST['nom']."\n\r";
    		$Prenom = "Prenom : ".$_POST['prenom']."\n\r";
                    $Telephone = "Telephone :".$_POST['Telephone']."\n\r";   
    		$message = "\nMessage:\n\t$Prenom\n\t$nom\n\t$Telephone";
    		if (mail($to , $sujet , $message , "From: $from"))
    	{ 
    	echo'
    	<script type="text/javascript">
    	<!--
    	alert("Votre message a été envoyé .");
    	//-->
    	</script>'; 
     
    		}
    		else
    		{
    			echo'
    				<script type="text/javascript">
    				<!--
    					alert("Votre message n\'a pas pu être envoyé !!!");
    				//-->
    				</script>'
    			;
    		}
    		}
    }
     
    echo '<br /><br />';
     
     
    ?>

  8. #28
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    re

    voila quand je copie ton code
    j ai
    Parse error: parse error, unexpected '}' in C:\Program Files\EasyPHP 2.0b1\www\Formulaire\testvalidemail.php on line 82

    je supprime le }

    et la ben mail faux ca part

    d habitude quand je veux apprendre je commence par le debut mais la j ai une contrainte du boulot

    donc c'est un peu a l arrache, sur un code de base ca passe mais des que ca devient plus pechu ben ca plante faute de bien connaitre le langage

    a+

    je continue mes test on sait jamais

    a+

  9. #29
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    salut

    voici comment j ai apparemment résolu le problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     $missing_fields = array();
        if (preg_match($regex, $courriel)) {
     
           echo "L'adresse $courriel est valide";
        } else {
           echo "L'adresse $courriel n'est pas valide"; 
    	   exit();
    a+

  10. #30
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    ok, super !

    N'oublies pas de mettre la discussion en résolu !

  11. #31
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Pourquoi tant de complications

    Un simple exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $mail = filter_input( INPUT_POST, 'mail', FILTER_VALIDATE_EMAIL );
            if( $mail === NULL )
            {
                $errors[] = 'Vous devez renseigner votre adresse de courrier &eacute;lectronique.';
            }
            // Si le mail fourni n'est pas valide
            elseif( $mail === false )
            {
                $errors[] = 'Votre adresse de courrier &eacute;lectronique n\'est pas valide.';
                $mail = filter_input( INPUT_POST, 'mail', FILTER_SANITIZE_EMAIL );
            }
    Utilisation des filtres de validation et de conversion.

  12. #32
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    merci
    j essayerai mais plus tard

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Controles des champs avant insertion dans la base de donnees avec talend
    Par tchanga dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 16/06/2008, 16h56
  2. Tester des champs
    Par msahmi dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/02/2008, 16h25
  3. Formulaire : vérification des champs et envoi
    Par miltonis dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/11/2007, 16h00
  4. [PHP-JS] Comment tester un champ avant de valider avec GET ?
    Par anis_el_madani dans le forum Langage
    Réponses: 2
    Dernier message: 09/04/2007, 20h37
  5. traitement des données avant envoie dans MySQL
    Par italiasky dans le forum SQL Procédural
    Réponses: 13
    Dernier message: 07/02/2006, 22h50

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