champs de formulaire vides dans Outlook

Guillaume - SYSCOM
Invité n'ayant pas de compte PHPfrance

01 mars 2010, 12:24

Bonjour à tous,

je viens d'installer mon site sur l'offre business d'Orange et mes formulaires ne fonctionnent plus. Plus précisément, ils arrivent, mais le contenu des champs n'apparait pas alors que les formulaires fonctionnaient avant avec mon ancien hébergeur (free).
Pouvez-vous m'aider ???

Voici le code de mon formulaire (page contact.html) :
<form action="contact-b.php" method="post" name="contact" id="contact" onSubmit="MM_validateForm('nom','','R','prenom','','R','email','','RisEmail','message','','R');return document.MM_returnValue">
                                <table width="530" border="0" cellspacing="0" cellpadding="0">
                                  <tr> 
                                        Nom 
                                        <input name="nom" type="text" class="texte-cadre" id="nom" size="30">
                                        <br>
                                        <br>
                                        Prenom : 
                                        <input name="prenom" type="text" class="texte-cadre" id="prenom" size="30">
                                        <br>
                                        <br>
                                        Email : 
                                        <input name="email" type="text" class="texte-cadre" id="email" size="30">
                                        <br>
                                        <br>
                                        Message : <br>
                                        <textarea name="message" class="texte-cadre" cols="50" rows="10" id="message"></textarea>
                                        <br>
                                        <br>
                                        <span class="titre-bleu"> 
                                        <input name="envoyer" type="image" id="envoyer" src="img-formulaire/img-btn-envoyer.gif" alt="Envoyez le formulaire" width="94" height="37" border="0">
                                        </span> </p></td>
                                  </tr>
                                </table>
                              </form>
Voici mon code PHP (contact-b.php) :
<?php 
     $headers ='From: "contact"<[email protected]>'."\n";
	 $headers .='Return-Path: [email protected]'."\n"; 
     $headers .='Reply-To: [email protected]'."\n";
	 $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; 
     $headers .='Content-Transfer-Encoding: 8bit'; 
	 $sujet="formulaire de contact";
	 $msg="Un contact est arrive \n
	 Nom : $nom \n
	 Prenom : $prenom \n
	 Email : $email \n
	 Message : $message";

     if(mail('[email protected]', $sujet, $msg, $headers)) 
     { 
          echo 'Votre message a bien été envoyé'; 
     } 
     else 
     { 
          echo 'Le message n\'a pu être envoyé'; 
     } 
?>
Merci d'avance pour votre aide

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

01 mars 2010, 12:30

Merci d'utiliser les balises
 et de ne poster tes questions que dans un seul forum

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

02 mars 2010, 01:06

Il se peut que la variable register_global de ton nouvel hébergeur soit désactivée...

essaye d'ajouter un
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
...
avant ta variable $headers et dis nous si cela fonctionne mieux comme ça :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Guillaume - SYSCOM
Invité n'ayant pas de compte PHPfrance

02 mars 2010, 15:41

Je viens d'essayer, mais ça ne marche toujours pas, je ne reçois même plus mon message dans Outlook ??? :(
Peut-être ai-je fait une fausse manip !

Voici le nouveau code PHP :
<?php 
     $nom=$_POST['nom'];
	 $prenom=$_POST['prenom'];
	 $email=$_POST['email'];
	 $message=$_POST['message'];
	 $headers ='From: "contact"<[email protected]>'."\n";
	 $headers .='Return-Path: [email protected]'."\n"; 
     $headers .='Reply-To: [email protected]'."\n";
	 $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; 
     $headers .='Content-Transfer-Encoding: 8bit'; 
	 $sujet="formulaire de contact";
	 $msg="Un contact est arrive \n
	 Nom : $nom \n
	 Prenom : $prenom \n
	 Email : $email \n
	 Message : $message";

     if(mail('[email protected]', $sujet, $msg, $headers)) 
     { 
          echo 'Votre message a bien été envoyé'; 
     } 
     else 
     { 
          echo 'Le message n\'a pu être envoyé'; 
     } 
?>
Merci pour ton aide :priere:

Guillaume - SYSCOM
Invité n'ayant pas de compte PHPfrance

02 mars 2010, 15:50

Rectification, ça marche très bien !!!!
le message a juste mis quelques minutes pour arriver...

Merci :D