Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/01/2008, 11h54   #1
Nouveau Membre du Club
 
Inscription : mai 2005
Messages : 202
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 202
Points : 37
Points : 37
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 :
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.
Angeldu74 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 15h24   #2
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

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

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
ce qui nous aiderait ça serait de nous decrire l erreur svp
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 19h29   #3
Nouveau Membre du Club
 
Inscription : mai 2005
Messages : 202
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 202
Points : 37
Points : 37
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.
Angeldu74 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 20h12   #4
Membre éclairé
 
Avatar de makmaoui
 
Développeur Web
Inscription : mai 2007
Messages : 282
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2007
Messages : 282
Points : 361
Points : 361
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
makmaoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2008, 00h06   #5
Nouveau Membre du Club
 
Inscription : mai 2005
Messages : 202
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 202
Points : 37
Points : 37
Par défaut Bien vu...

Bien vu. Merci j'avais oublié une acollade.
Merci et Bonne continuation. @+
Angeldu74 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h57.


 
 
 
 
Partenaires

Hébergement Web