Récupérer un formulaire par mail en PHP

Résolu
hk -  
 hk -
Bonjour, (je suis un hyper débutant en php)
j ai fait un mini formulaire en PHP pour le récupérer sur mon mail, le problème c'est que quand j'arrive sur la page il est envoyé automatiquement une première fois à vide puis après ca marche normalement...
comment éviter de l envoyer si les variables sont encore vides ???
Merci

le code :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Envoi d'un email</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>TITRE</p>
<form action="email.php" method="post">
<p>
<input type="text" name="sujet" /> </br>

<p>MESSAGE</p>
<form action="email.php" method="post">
<p>

<textarea cols="18" rows="20"
type="text" name="message" </textarea></br>

<p>VOTRE EMAIL</p>
<form action="email.php" method="post">
<p>
<input type="text" name="expediteur" /></br>

<input type="submit" value="Valider" />
</p>
</form>
</body>
</html>

<?php
$sujet = $_POST['sujet'];
$message = $_POST['message'];
$email = $_POST['expediteur'];
mail("XXX", "$sujet", "$message", "$email");
?>
Configuration: Mac OS X 10.4.11
Safari 531.21.10

4 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    C'est normal, tu à chaque fois que la page est chargée tu demandes l'envoie d'un email.
    Fais des vérifications avant de l'envoyer !
    0
  2. hk
     
    ok merci je vais essayer de poser des vérifications...
    0
  3. Ozimandias Messages postés 528 Statut Membre 46
     
    essaye ça... ça évitera de l'envoyer direct:

    <form action="email.php?sendmessage=envoi" method="post">

    <?php
    if ((isset($_GET['sendmessage']))&&($_GET['sendmessage'] == 'envoi')){
    $sujet = $_POST['sujet'];
    $message = $_POST['message'];
    $email = $_POST['expediteur'];
    mail("XXX", "$sujet", "$message", "$email");
    }
    ?>

    Après il faut quand même vérifier la validité des données avant l'envoi.
    0
  4. hk
     
    trop beau merci beaucoup ca fonctionne à merveille !!!!
    0