Besoin d'aide pour mon code .PHP

Résolu
Bonjour je voudrait faire un formulaire sur ma page web .
La page html est bonne mais le script .php ne fonctionne pas car j'ai des erreur ligne 6 ou just page blanche une foi que j'ai modifier quelque choz .... je suis perdu besoin d'un coup de main svp !

Voici mon code PHP :

<?php

if(isset($_POST) && isset($POST['Nom']) && isset($POST['Adresse']) && isset($POST['CP']) && isset($POST['Téléphone fixe']) && isset($POST['E-mail'])){
extract($_POST);
if(!empty($Nom) && !empty($Adresse) && !empty($CP) && !empty($Téléphone) && !empty($Email)){
$destinataire="monemail@cegetel.net";
$sujet="Bon de commande";
$msg-"une nouvelle commande \n
Nom : $Nom \n
Adresse : $Adresse \n
Ville : $Ville \n
Téléphone : $Téléphone \n
E-mail : $Email";
$entete="from: $Nom \n Reply-To: $Email";
mail($destinataire,$sujet,$msg,$entete);
echo "Le mail à été envoyé reste plus qu'à patienter";
} else {
echo "Vous n'avez pas rempli tout les champs";
}
}
?>

mon code html :

<html lang="fr">
<head>
<title> Formulaire_01 » Page 1 of 1 </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css;">
<link rel="stylesheet" href="formulaire_01_g.css" type="text/css" media="screen,projection,print"> <!--// Document Style //-->
<link rel="stylesheet" href="index_p99.css" type="text/css" media="screen,projection,print"> <!--// Page Style //-->
<script src="formulaire_01_g.js" type="text/javascript"></script> <!--// Document Script //-->
</head>

<body id="page">
<form id="f43" action="contact.php" method="post" >
<fieldset id="e43" class="cc01">
<legend id="e42" class="cc02">
Informations Personnelles
</legend><br>
<label id="e41" class="cc03" for="e40">
Titre
</label>
<select id="e40" class="cc03" size="1" name="Title" title="Titre">
<option> M.</option>
<option> Mme</option>
<option> Melle</option>
</select><br>
<label id="e39" class="cc03" for="e38">
Nom / Prénom
</label>
<input id="e38" class="cc04" type="text" name="Nom - Prénom" title="Nom" size="59"><br>
<label id="e37" class="cc03" for="e36">
Adresse
</label>
<input id="e36" class="cc04" type="text" name="Adresse" title="Adresse" size="59">
<label id="e35" class="cc05">
Bon de Commande
</label><br>
<label id="e34" class="cc03" for="e6">
Colis Barbecue N°1 - 25 €
</label><br>
<label id="e33" class="cc03">
Colis Barbecue N°1 - 25 €
</label><br>
<label id="e32" class="cc03" for="e4">
Colis Barbecue N°1 - 25 €
</label><br>
<label id="e31" class="cc03" for="e5">
Colis Barbecue N°1 - 25 €
</label><br>
<label id="e30" class="cc02">
*COMMANDE : Si un article ne vous convient pas vous pouvez nous contacter.
</label><br>
<textarea id="e29" class="cc04" name="Comments" title="Remarques" rows="2" cols="61">
Entrez vos remarques ici...
</textarea><br>
<input id="e28" class="cc03" type="submit" title="Envoyer données" value="Envoyer données"/>
<input id="e27" class="cc03" type="reset" title="Effacer données" value="Effacer données"/>
<label id="e26" class="cc05">
Quantité
</label>
<label id="e25" class="cc05">
Prix unitaire
</label><br>
<label id="e24" class="cc06" for="e6">
25
</label><br>
<label id="e23" class="cc06" for="e3">
25
</label><br>
<label id="e22" class="cc06" for="e4">
25
</label><br>
<label id="e21" class="cc06" for="e5">
25
</label><br>
<label id="e20" class="cc03" for="e1">
Colis Barbecue N°1 - 25 €
</label><br>
<label id="e19" class="cc03" for="e2">
Colis Barbecue N°1 - 25 €
</label>
<label id="e18" class="cc06" for="e1">
25
</label><br>
<label id="e17" class="cc06" for="e2">
25
</label><br>
<label id="e16" class="cc03" for="e15">
Ville
</label>
<input id="e15" class="cc04" type="text" name="VILLE" title="Ville" size="59"><br>
<label id="e14" class="cc03" for="e13">
Telephone
</label>
<input id="e13" class="cc04" type="text" name="Telephone" title="E-mail" size="59"><br>
<label id="e12" class="cc03" for="e11"><br>
Email
</label>
<input id="e9" class="cc04" type="text" name="Email" title="Email" value="E-mail" size="59"><br>
<label id="e8" class="cc03" for="e7">
Date d'enlevement<br>
de ma commande
</label>
<input id="e7" class="cc04" type="text" name="Date Enlévement" title="E-mail" value="Date Enlévement" size="59">
<input id="e6" class="cc04" type="text" name="Quantité" title="Nom" size="19"><br>
<input id="e5" class="cc04" type="text" name="Quantité" title="Nom" size="19">
<input id="e4" class="cc04" type="text" name="Quantité" title="Nom" size="19">
<input id="e3" class="cc04" type="text" name="Quantité" title="Nom" size="19"><br>
<input id="e2" class="cc04" type="text" name="Quantité" title="Nom" size="19">
<input id="e1" class="cc04" type="text" name="Quantité" title="Nom" size="19">
</fieldset>
</form>
</body>
</html>

6 réponses

  1. Bonjour,

    De façon générale, quand on a des messages d'erreurs, il faut les donner ! Ils contiennent souvent les informations pour comprendre le problème.

    Bon ceci-dit, ton problème est simple :
     $msg-"une nouvelle commande \n 

    Tu as écrit « - » au lieu de « = ».

    Xavier
    0
    1. Bonjour a toi xavier et merci pour ta reponce aussi rapide !

      voici l'error :

      Parse error: syntax error, unexpected 'fixe' (T_STRING) in contacct.php on line 6

      j'ai coriger donc $msg="une nouvelle commande \n

      mais maintenant j'ai une page blanche
      0
      1. Tes noms ne correspondent pas entre ton HTML et ton PHP.
        Par exemple, en HTML, tu as
        <input ... type="text" name="Telephone" ...>

        alors qu'en PHP, tu as :
         isset($POST['Téléphone fixe'])


        Il faut repasser sur toutes les variables pour s'assurer qu'elles ont le même nom. Et, si possible, évite les espaces et les accents.
        0
        1. je vien de tout corriger mais j'ai une page blanche qui c'affiche du coup

          voici le code php :

          <?php

          if(isset($_POST) && isset($POST['Nom']) && isset($POST['Adresse']) && isset($POST['Ville']) && isset($POST['Telephone']) && isset($POST['Email'])){
          extract($_POST);
          if(!empty($Nom) && !empty($Adresse) && !empty($Ville) && !empty($Telephone) && !empty($Email)){
          $destinataire="delemer@cegetel.net";
          $sujet="Bon de commande";
          $msg="une nouvelle commande \n
          Nom : $Nom \n
          Adresse : $Adresse \n
          Ville : $Ville \n
          Telephone : $Téléphone \n
          Email : $Email";
          $entete="from: $Nom \n Reply-To: $Email";
          mail($destinataire,$sujet,$msg,$entete);
          echo "Le mail à été envoyé reste plus qu'à patienter";
          } else {
          echo "Vous n'avez pas rempli tout les champs";
          }
          }
          ?>

          et le code html le voici :

          <html lang="fr">
          <head>
          <title> Formulaire_01 » Page 1 of 1 </title>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
          <meta http-equiv="Content-Style-Type" content="text/css;">
          <link rel="stylesheet" href="formulaire_01_g.css" type="text/css" media="screen,projection,print"> <!--// Document Style //-->
          <link rel="stylesheet" href="index_p99.css" type="text/css" media="screen,projection,print"> <!--// Page Style //-->
          <script src="formulaire_01_g.js" type="text/javascript"></script> <!--// Document Script //-->
          </head>

          <body id="page">
          <form id="f43" action="contact.php" method="post" >
          <fieldset id="e43" class="cc01">
          <legend id="e42" class="cc02">
          Informations Personnelles
          </legend><br>
          <label id="e41" class="cc03" for="e40">
          Titre
          </label>
          <select id="e40" class="cc03" size="1" name="Title" title="Titre">
          <option> M.</option>
          <option> Mme</option>
          <option> Melle</option>
          </select><br>
          <label id="e39" class="cc03" for="e38">
          Nom
          </label>
          <input id="e38" class="cc04" type="text" name="Nom" title="Nom" size="59"><br>
          <label id="e37" class="cc03" for="e36">
          Adresse
          </label>
          <input id="e36" class="cc04" type="text" name="Adresse" title="Adresse" size="59">
          <label id="e35" class="cc05">
          Bon de Commande
          </label><br>
          <label id="e34" class="cc03" for="e6">
          Colis Barbecue N°1 - 25 €
          </label><br>
          <label id="e33" class="cc03">
          Colis Barbecue N°1 - 25 €
          </label><br>
          <label id="e32" class="cc03" for="e4">
          Colis Barbecue N°1 - 25 €
          </label><br>
          <label id="e31" class="cc03" for="e5">
          Colis Barbecue N°1 - 25 €
          </label><br>
          <label id="e30" class="cc02">
          *COMMANDE : Si un article ne vous convient pas vous pouvez nous contacter.
          </label><br>
          <textarea id="e29" class="cc04" name="Comments" title="Remarques" rows="2" cols="61">
          Entrez vos remarques ici...
          </textarea><br>
          <input id="e28" class="cc03" type="submit" title="Envoyer données" value="Envoyer données"/>
          <input id="e27" class="cc03" type="reset" title="Effacer données" value="Effacer données"/>
          <label id="e26" class="cc05">
          Quantité
          </label>
          <label id="e25" class="cc05">
          Prix unitaire
          </label><br>
          <label id="e24" class="cc06" for="e6">
          25
          </label><br>
          <label id="e23" class="cc06" for="e3">
          25
          </label><br>
          <label id="e22" class="cc06" for="e4">
          25
          </label><br>
          <label id="e21" class="cc06" for="e5">
          25
          </label><br>
          <label id="e20" class="cc03" for="e1">
          Colis Barbecue N°1 - 25 €
          </label><br>
          <label id="e19" class="cc03" for="e2">
          Colis Barbecue N°1 - 25 €
          </label>
          <label id="e18" class="cc06" for="e1">
          25
          </label><br>
          <label id="e17" class="cc06" for="e2">
          25
          </label><br>
          <label id="e16" class="cc03" for="e15">
          Ville
          </label>
          <input id="e15" class="cc04" type="text" name="VILLE" title="Ville" size="59"><br>
          <label id="e14" class="cc03" for="e13">
          Telephone
          </label>
          <input id="e13" class="cc04" type="text" name="Telephone" title="E-mail" size="59"><br>
          <label id="e12" class="cc03" for="e11"><br>
          Email
          </label>
          <input id="e9" class="cc04" type="text" name="Email" title="Email" value="E-mail" size="59"><br>
          <label id="e8" class="cc03" for="e7">
          Date d'enlevement<br>
          de ma commande
          </label>
          <input id="e7" class="cc04" type="text" name="Date Enlévement" title="E-mail" value="Date Enlévement" size="59">
          <input id="e6" class="cc04" type="text" name="Quantité" title="Nom" size="19"><br>
          <input id="e5" class="cc04" type="text" name="Quantité" title="Nom" size="19">
          <input id="e4" class="cc04" type="text" name="Quantité" title="Nom" size="19">
          <input id="e3" class="cc04" type="text" name="Quantité" title="Nom" size="19"><br>
          <input id="e2" class="cc04" type="text" name="Quantité" title="Nom" size="19">
          <input id="e1" class="cc04" type="text" name="Quantité" title="Nom" size="19">
          </fieldset>
          </form>
          </body>
          </html>
          0
          1. Il reste VILLE / Ville qui n'est pas écrit pareil.
            0
        2. J'ai corriger mais toujours le même problème = page blanche
          0
          1. Ah ben oui, forcément...
            if(isset($_POST) && isset($POST['Nom']) && isset($POST['Adresse']) && isset($POST['Ville']) && isset($POST['Telephone']) && isset($POST['Email'])){ 

            $_POST et non pas $POST dans toutes tes vérifications !
            Seule la première est bonne (et n'est d'ailleurs pas nécessaire)
            Du coup, mets bien :
            if(isset($_POST['Nom']) && isset($_POST['Adresse']) && isset($_POST['Ville']) && isset($_POST['Telephone']) && isset($_POST['Email'])){ 
            0
        3. Merci de ta reponce Reivax962 ca m'avance un peut dja ^^

          donc j'ai corriger et ca me donne une erreur a la ligne 13
          (Notice: Undefined variable: Téléphone in /flex/domain/uerite.fr/site/www/contact.php on line 13 Le mail à été envoyé reste plus qu'à patienter)

          voici le code apré la correction (php);

          <?php
          
          if(isset($_POST) && isset($_POST['Nom']) && isset($_POST['Adresse']) && isset($_POST['Ville']) && isset($_POST['Telephone']) && isset($_POST['Email'])){
             extract($_POST);
             if(!empty($Nom) && !empty($Adresse) && !empty($Ville) && !empty($Telephone) && !empty($Email)){
                  $destinataire="delmer@cegetel.net";
          		$sujet="Bon de commande";
          		$msg="une nouvelle commande \n
          		Nom : $Nom \n
          		Adresse : $Adresse \n
          		Ville : $Ville \n
          		Telephone : $Telephone \n
          		Email : $Email";
          		$entete="from: $Nom \n Reply-To: $Email";
          		mail($destinataire,$sujet,$msg,$entete);
                  echo "Le mail à été envoyé reste plus qu'à patienter";
             }   else {
          		echo "Vous n'avez pas rempli tout les champs";
             }
          }
          ?>
          0
          1. Email : $Email";


            j'ai rajouter le \n et ca a l'air marcher je vous tien au courant merci en tout cas pour l'iade
            0
          2. bonjour, merci beaucoup Xavier mon problème a été résolu grâce a toi ;=)
            0