Erreur dans mon code php/html

Résolu/Fermé
Youyou44 - Modifié le 31 déc. 2017 à 14:55
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
- 3 janv. 2018 à 20:11
Bonjour, je suis en train de faire un formulaire de contact pour un site internet et j'ai l'erreur suivante que je ne comprends pas : Parse error: syntax error, unexpected '$header' (T_VARIABLE) in C:\wamp64\www\tests\formulaire_de_contact.php on line 6
Voici mon code :
<?php
if(isset($_POST['mailform']))
{
 if(!empty($_POST['nom']) AND !empty($_POST['tel']) AND !empty($_POST['adresse de dep']) AND !empty($_POST['adresse dariv']) AND !empty($_POST['message']) 
 
  $header="MIME-Version: 1.0\r\n";
  $header.='From:"xxx.fr"<***@***>'."\n";
  $header.='Content-Type:text/html; charset="uft-8"'."\n";
  $header.='Content-Transfer-Encoding: 8bit';

  $message='
  <html>
   <body>
    <div align="center">
     <u>Nom de l\'expéditeur :</u>'.$_POST['nom'].'<br />
     <u>Numéro de l\'expéditeur :</u>'.$_POST['tel'].'<br />
     <u> Adresse de départ :</u>'.$_POST['adresse de dep'].'<br />
     <u> Adresse d\'arrivée :</u>'.$_POST['adresse dariv'].'<br />
     <u> Heure de la course ou informations complémentaires :</u>'.$_POST['message'].'<br />
     <br />
     '.nl2br($_POST['message']).'
     <br />
    </div>
   </body>
  </html>
  ';

  mail("***@***", "CONTACT - x.fr", $message, $header);
  $msg="Votre message a bien été envoyé !";
 
 else
 {
  $msg="Tous les champs doivent être complétés !";
 }
}
?>
<html>
 <head>
  <meta charset="utf-8" />
 </head>
 <body>
  <h2>Formulaire de contact !</h2>
  <form method="POST" action="">
   <input type="text" name="nom" placeholder="Votre nom" value="<?php if(isset($_POST['nom'])) { echo $_POST['nom']; } ?>" /><br /><br />
   <input type="number" name="tel" placeholder="Votre numéro de téléphone" value="<?php if(isset($_POST['tel'])) { echo $_POST['tel']; } ?>" /><br /><br />
   <input type="text" name="adresse de dep" placeholder="Votre adresse de départ" value="<?php if(isset($_POST['adresse de dep'])) { echo $_POST['adresse de dep']; } ?>" /><br /><br /> 
   <input type="text" name="adresse dariv" placeholder="Votre adresse d'arrivée" value="<?php if(isset($_POST['adresse dariv'])) { echo $_POST['adresse dariv']; } ?>" /><br /><br /> 
   <textarea name="message" placeholder="Votre message contenant l\'heure de la course ainsi que si besoin des informations complémentaires "><?php if(isset($_POST['message'])) { echo $_POST['message']; } ?></textarea><br /><br />
   <input type="submit" value="Envoyer !" name="mailform"/>
  </form>
  <?php
  if(isset($msg))
  {
   echo $msg;
  }
  ?>
 </body>
</html>


Je vous remercie d'avance pour vos réponses, cela fait une semaine que je bloque sur cette erreur :-P

4 réponses

Judge_DT
Messages postés
28791
Date d'inscription
vendredi 5 février 2010
Statut
Modérateur
Dernière intervention
23 octobre 2021
9 914
1 janv. 2018 à 01:26
Salut,

<u> Adresse d\'arrivée :</u>'.$_POST['adresse dariv'].'<br />


Nommer des variables avec des espaces, déjà, c'est 1ère source d'ennuis...

Donc, commencer par ne pas utiliser d'espace dans les variables, au besoin les remplacer par des underscores (_).
1
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018

1 janv. 2018 à 01:30
Merci de votre réponse j'essaierai ça plus tard et je vous en referai part.
0
Utilisateur anonyme
1 janv. 2018 à 14:37
Bonjour

Même si ce qui est dit dans les réponses précédentes est vrai, cela n'a aucun rapport avec ton message d'erreur.
Le message d'erreur vient du fait que tu as oublié de fermé la parenthèse du if.
1
Mounir--B
Messages postés
7
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
2 janvier 2018
1
2 janv. 2018 à 11:02
Ce qui est dit plus haut contribue à la résolution.
0
Utilisateur anonyme
2 janv. 2018 à 12:25
Je n'ai pas dit le contraire, j'ai même approuvé les autres contributions. J'ai juste dit que les problèmes qu'elles résolvent ne sont pas celui qui était soumis et qui portait sur un message d'erreur bien défini.
0
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
1 109
Modifié le 2 janv. 2018 à 12:41
il s'agit du
if
en ligne 4, il y manque une parenthèse fermante en fin de ligne.
le message d'erreur t'informe que php est surpris de voir
$header
en ligne 6.
l'erreur est juste avant: qu'as-tu fait pendant une semaine?
0
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018
> yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022

3 janv. 2018 à 16:39
Merci beaucoup, je n'y avais pas fait attention :)
0
Mounir--B
Messages postés
7
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
2 janvier 2018
1
31 déc. 2017 à 16:41
Frustrant ... mais c'est juste un problème d'accolades. Regardes ton code, si je ne me trompe pas, tu as oublié une accolade ouvrante "{"
0
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018

1 janv. 2018 à 01:17
Je vois. C'est ce que je pensais. Merci. Auriez vous l'amabilité de me dire où se trouve cette accolade car j'ai beau chercher je ne trouve pas. Merci d'avance et bonne année
0
Mounir--B
Messages postés
7
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
2 janvier 2018
1
2 janv. 2018 à 15:27
Ligne 31
0
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
1 109 > Mounir--B
Messages postés
7
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
2 janvier 2018

2 janv. 2018 à 16:00
cela sera le troisième message d'erreur, occupons-nous d'abord du premier.
0
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018

3 janv. 2018 à 16:48
J'ai donc réglé le problème de la parenthèse ligne 4 grâce à vous mais j'ai maintenant le message d'erreur suivant : Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp64\www\tests\formulaire_de_contact.php on line 31. Quelqu'un pourrait-il m'aider svp?
0
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
1 109
3 janv. 2018 à 17:45
si tu souhaites que le IF s'applique à plusieurs instructions, tu dois les entourer d'accolades.
il faut donc probablement une accolade ouvrante la ligne après le IF, et une accolade fermante la ligne avant le ELSE.
0
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018
> yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022

3 janv. 2018 à 19:54
Oh!! Merci beaucoup! Cela fonctionne enfin!
0
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
1 109 > Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018

3 janv. 2018 à 19:58
parfait! peux-tu marquer le sujet comme résolu (via la petite roue dentée à droite du titre)?
0
Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018
> yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022

3 janv. 2018 à 20:01
Dois-je aller dans ne plus suivre??
0
yg_be
Messages postés
19316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 mai 2022
1 109 > Youyou_44
Messages postés
6
Date d'inscription
dimanche 31 décembre 2017
Statut
Membre
Dernière intervention
3 janvier 2018

3 janv. 2018 à 20:11
tu as ouvert la discussion sans être inscrit, tu ne peux sans doute donc pas la fermer.
0