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 :

Erreur sur mon formulaire de contact


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Mai 2005
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 233
    Points : 82
    Points
    82
    Par défaut Erreur sur mon formulaire de contact
    Je n'arrive pas à trouver mon erreur pourriez-vous m'aider svp.

    Voici le code de mon fichier nadform.php que j'exécute depuis mon formulaire:

    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
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    <!-- DEBUT DU SCRIPT nadform.php-->
    <html>
    <head>
     
    </head>
    <body>
    <?
    // DEBUT Fonction de contrôle du mail PHP-UNIX
    function check_mail($champ4) { 
    if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ4)) || 
    (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ4)) ) { 
    $host = explode('@', $champ4);
    if(checkdnsrr($host[1].'.', 'MX') ) return true;
    if(checkdnsrr($host[1].'.', 'A') ) return true;
    if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
    }
    return false;
    }
    // FIN Fonction de contrôle du mail
    $MailTo = "postemaster@vivreensemblealabalme.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
    $MailCc = ""; // adresse à laquelle sera envoyé un communiqué
    $MailSubject = $champ3; //texte qui va figurer dans le champ "sujet" du email
    $MailHeader = $champ4; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").
    // Quelques hébergeurs obligent que le domaine du mail de l'expéditeur soit celui de votre site 
     
    $min_size="3"; // Longueur minimum du message
    $max_size="5000"; //Longueur maximum du message
     
    /* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */
     
    $Envoi = 1; //initialisation de la variable envoi à 1
     
    /* Pour enlever une condition de vérification de champ (vide ou non), enlever, par exemple au champ 1 :
    * 
    if ($champ1 == ""){ //nom du champ1
    echo("Vous n'avez pas complété le champ 1.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
    $Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
    }
    else {
    }
    
    et ne laisser que :
    
    $MailBody .= "Question 1 : $champ1\n";
    
    */ 
    //
    if ($champ1 == ""){ //nom du champ1
    echo("Vous n'avez pas complété Votre Nom.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
    $Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
    }
    else {
    $MailBody .= "Question 1 : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
    }
    if ($champ2 == ""){
    echo("Vous n'avez pas complété votre Prénom.<br>");
    $Envoi = 0;
    }
    else {
    $MailBody .= "Question 2 : $champ2\n";
    }
    if ($champ3 == ""){
    echo("Vous n'avez pas complété le Sujet<br>");
    $Envoi = 0;
    }
    else {
    $MailBody .= "Question 3 : $champ3\n";
    }
    if ($champ4 == ""){
    echo("Vous n'avez pas complété votre E-mail<br>");
    $Envoi = 0;
    }
    else {
    if (check_mail($champ4)) {
    $MailBody .= "Mail : $champ4\n";
    }
    else {
    echo("L'adresse e-mail du champ 4 n'est pas valide<br>");
    $Envoi = 0;
    }
    if ($champ6 == ""){
    echo("Vous avez oublié votre Commentaire.<br>");
    $Envoi = 0;
    }
    elseif (strlen($champ6) <= $min_size) {
    echo("Votre message est trop petit.<br>");
    $Envoi = 0;
    }
    elseif (strlen($champ6) >= $max_size) {
    echo("Votre message est trop long.");
    $Envoi = 0;
    }
    else {
    $affich_champ6 = htmlentities($champ6); // affiche le code HTML à l'état brut. 
    $affich_champ6 = StripSlashes($affich_champ6); // enlève, au texte affiché, les \ aux apostrophes, exemple : l\'habitude
    $envoi_champ6 = StripSlashes($champ6); // enlève les \ aux apostrophes, exemple : l\'habitude
    $MailBody .= "Votre texte : $envoi_champ6\n";
    }
    if ($Envoi == 0) { //vérification que la variable envoi est bien à 1
    echo("<p><a href=\"Javascript:history.go(-1)\"><center><strong>RETOUR</strong></center></a></p>");
    //Pas d'envoi du message et retour au formulaire
    }
     
    //Envoi du message
    if ($Envoi == 1) { //vérification que la variable envoi est bien à 1
    echo("<p><strong>Votre Nom : <font color=\"#0000FF\">$champ1</font>\n");
    echo("<br>Votre Prénom : <font color=\"#0000FF\">$champ2</font>\n");
    echo("<br>Votre E-mail : <font color=\"#0000FF\">$champ4</font>\n");
    echo("<br>Votre Sujet : <font color=\"#0000FF\">$champ3</font>\n");
    echo("<br>Votre texte : <font color=\"#0000FF\">$affich_champ6</font>\n");
    echo("<p>&nbsp;</p>");
    mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
    //mail($MailCc, $MailSubject, $MailBody, $MailHeader); //envoi du communiqué (enlever // pour le rendre opérationnel
    echo("<p>Votre message a bien été envoyé.<br>Merci."); 
    echo("<p>&nbsp;</p><p>&nbsp;</p><p align=\"center\"><a href=\"Accueil.php\">Retour</strong></a></p>"); //affichage d'un message de confirmation.
    }
    ?>
    </body>
    </html>
    <!-- FIN DU SCRIPT nadform.php-->
    Merci d'avance pour votre aide.

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    ce qui nous aiderait ça serait de nous decrire l erreur svp

  3. #3
    Membre régulier
    Inscrit en
    Mai 2005
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 233
    Points : 82
    Points
    82
    Par défaut Voici l'erreur
    Erreur:
    Parse error: syntax error, unexpected $end in /home.43/v/i/v/vivreens/www/nadform.php on line 120

    Et c'est ça que je ne comprend pas car la ligne 120 c la fin de mon fichier.

    Merci d'avance pour votre aide.

  4. #4
    Membre averti Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Points : 368
    Points
    368
    Par défaut
    Salut,

    comme le dit le message d'erreur tu as une erreur de syntaxe, une accolade n'est pas fermée, il me semble que c'est ton else à la ligne 73

  5. #5
    Membre régulier
    Inscrit en
    Mai 2005
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 233
    Points : 82
    Points
    82
    Par défaut Bien vu...
    Bien vu. Merci j'avais oublié une acollade.
    Merci et Bonne continuation. @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] une erreur sur mon formulaire "System.IO.FileNotFoundException
    Par solaar dans le forum Silverlight
    Réponses: 0
    Dernier message: 03/07/2013, 08h21
  2. Erreur sur mon formulaire
    Par auroore dans le forum Langage
    Réponses: 2
    Dernier message: 16/03/2010, 16h35
  3. Question sur mon formulaire de contact
    Par Analfabete dans le forum Langage
    Réponses: 3
    Dernier message: 24/04/2006, 18h12
  4. la date et heure sur mon formulaire
    Par azde7015 dans le forum Access
    Réponses: 11
    Dernier message: 07/02/2006, 10h40
  5. Prob avec PHP sur le formulaire de contact
    Par inferno66667 dans le forum Langage
    Réponses: 7
    Dernier message: 16/11/2005, 17h06

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