Formulaire et envoi de mail

Résolu
Signaler
Messages postés
15
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
24 avril 2010
-
Messages postés
86
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
19 juin 2009
-
Bonjour, j'ai un petit problème avec le formulaire. En fait quand les personnes remplissent le formulaire je voudrais recevoir par mail leur réponse. Voici mes codes :

<form method="post" action="contact.php">
                  ----

            Votre nom :,
            ">,
         
          ----

            Objet : ,
            ">,
         
          ----

            Votre message :,
            <textarea name="message" cols="55" rows="8" tabindex="30" value="<?php echo $message;?>"></textarea>,
         
          ----

            Votre E-Mail :,
            " tabindex="40"/>
              *obligatoire,
         
       

        &nbsp;

       
         
       

        </form>
        Je vous remercie de votre visite - A bient&ocirc;t

        &nbsp;

    
     
      <?php
$headers .= "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\n";
$monMsg = $_POST['nom'] . "\n" .$_POST['mail'] . "\n" .$_POST['message'] . "\n" .$_POST['objet'];
if ($mail=='' || $nom=='' || $message=='' || $objet=='') { // Pour verifié si les case obligatoire ne sont pas vide;
?>
 <!-- si 1 d'elles est vide alors ca fait une alert en java script -->
 <script ="text/javascript">
 <!--
 alert('Vous n\'avait pas remplie toutes les cases obligatoires');
-->
 </script>
 
<?php
}else{
mail('monadresse@hotmail.fr', $_POST['mail'], $monMsg, $headers);
}
?>
     
   
</td>
  </tr>
</table>

déjà l'alert apparait tout le temps (dés que la page s'ouvre, si j'appuis sur envoyer en remplissant tous les champs). Je dois oublier quelque chose mais j'ai pas trouvé quoi. Merci de votre aide.

Becca

5 réponses

Messages postés
86
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
19 juin 2009

ben si tu n'aime pas les "isset" tu fais le test differement....genre : if($_POST['truc']< >"")
Messages postés
86
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
19 juin 2009

c'est normal que ton alert apparait tout le temps, car quand la page se charge, aucun de tes champs n'est rempli donc l'alert apparait...

Tu dois faire ton test que quand on clique sur ton bouton submit
Messages postés
15
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
24 avril 2010

Oui mais même quand je rempli tous les champs ça me dit qu'il en manque...

Becca
Messages postés
86
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
19 juin 2009

Ben en fait, tu devrais tester sur les $_POST['mail'] , etc...et non sur tes variables qui ne sont jamais affectées...

liste des champs du formulaire
.
if (isset($_POST['submit']))
{
test si tes champs sont remplis avec les $_POST...
}
Messages postés
15
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
24 avril 2010

Ah ok j'ai comprit merci. Je vais essayer mais les "isset" c'est pas mon truc préféré :s lol

Becca