problème formulaire php

problème formulaire php - PHP - Programmation

Marsh Posté le 31-05-2006 à 12:35:33    

Bonjour,

 

Je suis novice en php et j'ai fait ce formulaire de contact pour un site. Je l'ai hebergé sur ifance.com et lorsque je le teste je n'ai aucune réponse par mail. J'aimerais savoir si quelque chose ne va pas dans le script.

 

<?php
if ($_POST['envoyer'])
{
        if (empty ($nom) OR empty($prenom) OR empty($mail) OR empty($messages))
            {
            echo "<b><center>Attention, tous les champs sont obligatoires !</center></b><br>";
            }
        else {    
                $headers = "From: $prenom $nom <$mail>\n";
                $headers .= "Content-Type: text/html; charset=iso-8859-1\n";
               Mail("mailto:cyrille.ehrhart@ifrance.com","Renseignements >> $objet","
               Bonjour,\n\n\n
               $prenom $nom vous écrit :\n\n  
               $remarques \n\n mail :$mail","$headers" );
               echo "<center> Merci $prenom ! Votre message a bien été envoyé, nous tâcherons de vous répondre le plus rapidement possible.</center><br>";
               }
    }
        ?>
      <div align="center">
        <span>Tous les champs sont obligatoires</span>
      </div><br>
      <form action="contact.php"  method="post" />
        <div align="center">
          <table border="0">
            <tr>
              <td><form  METHOD="POST">
                  Nom
              </form></td>
              <td><input name="nom" value="" maxlength="100" /></td>
            </tr>
            <tr>
              <td>Pr&eacute;nom</td>
              <td><input name="prenom" value="" maxlength="50" /></td>
            </tr>
            <tr>
              <td>Adresse &eacute;lectronique</td>
              <td><input type="text" name="mail"  maxlength="256" />
              </td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  Votre message :
              </center></td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  <TEXTAREA NAME="messages" ROWS="5" COLS="40"></TEXTAREA>
              </center></td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  <input type="submit" name="envoyer" value="Envoi !" />
              </center></td>
            </tr>
          </table>
          </form>

 


Merci d'avance de vos précisions et de votre aide.

Reply

Marsh Posté le 31-05-2006 à 12:35:33   

Reply

Marsh Posté le 31-05-2006 à 13:53:08    

Salut,
 
plusieurs petites choses.
1/ il est où ton contact.php ? (action appelée)
2/ t'as écrit :
<td><form  METHOD="POST">
                  Nom
              </form></td>
 ????? C'est pour quoi ??  
2 balises form imbriquées, ca marchera pas.
 
Alors astuce :
1 - tu crées une page formulaire avec :
formulaire.php :
 
<form action="contact.php"  method="post" />
        <div align="center">
          <table border="0">
            <tr>
              <td> Nom </td>
              <td><input name="nom" value="" maxlength="100" /></td>
            </tr>
            <tr>
              <td>Pr&eacute;nom</td>
              <td><input name="prenom" value="" maxlength="50" /></td>
            </tr>
            <tr>
              <td>Adresse &eacute;lectronique</td>
              <td><input type="text" name="mail"  maxlength="256" />
              </td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  Votre message :  
              </center></td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  <TEXTAREA NAME="messages" ROWS="5" COLS="40"></TEXTAREA>
              </center></td>
            </tr>
            <tr>
              <td colspan="2"><center>
                  <input type="submit" name="envoyer" value="Envoi !" />
              </center></td>
            </tr>
          </table>
          </form>
 
2 - tu crées une page contact.php avec :
contact.php :
 
<?php
// recup de toutes tes variables
foreach ($HTTP_POST_VARS as $cle => $valeur) { $$cle = $valeur;}
 
//puis tes tests
        if (empty ($nom) OR empty($prenom) OR empty($mail) OR empty($messages))
            {
            echo "<b><center>Attention, tous les champs sont obligatoires !</center></b><br>";
            }
        else {    
                $headers = "From: $prenom $nom <$mail>\n";
                $headers .= "Content-Type: text/html; charset=iso-8859-1\n";
               Mail("mailto:cyrille.ehrhart@ifrance.com","Renseignements >> $objet","
               Bonjour,\n\n\n  
               $prenom $nom vous écrit :\n\n  
               $remarques \n\n mail :$mail","$headers" );
               echo "<center> Merci $prenom ! Votre message a bien été envoyé, nous tâcherons de vous répondre le plus rapidement possible.</center><br>";
               }
?>
 
mais avant tout : VERIFIES que la fonction mail est active chez ifrance !
 
@+

Reply

Marsh Posté le 31-05-2006 à 14:09:03    

Salut lenono75,
 
Merci beaucoup pour ton aide. J'ai pas encore testé ton script mais juste pour te dire que la page contact.php est celle que j'ai mis en haut.
 
Le site où tu peut voir le script : www.cyrille-ehrhart.new.fr/pp
 
Merci !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed