Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: demonjunior07 le le 16-03-2005 a 18:52:10

Titre: Formulaire PHP
Posté par: demonjunior07 le le 16-03-2005 a 18:52:10

Bonjour,

Voici le contenue de mon formulaire:


Code:
<?php
$pseudo = $_POST['pseudo'];
$mail = $_POST['mail'];
$message = $_POST['message'];
$priorite = $_POST['priorite'];

//on vérifies que le champ est bien rempli:
if(!empty($_POST["mail"]))
{
echo("<p align=\"center\"><font face=\"Comic Sans MS\" size=\"2\"><font color=\"#FFFFFF\">Merci <font color=\"#FF0000\"><u>$pseudo</u></font>,<br>votre message a bien été envoyé.<br>Le webmaster va faire son possible pour vous vous répondre au plus vite à: <font color=\"#FF0000\"><u>$mail</u></font></font></font><br><br>") ;
    echo("<a href=\"contact.html\">Retour</a>") ;
}//fin if
else
{
echo("<p align=\"center\"><font face=\"Comic Sans MS\" size=\"2\"><font color=\"#FFFFFF\">Vous n'avez pas saisi votre adresse e-mail ou votre message.</font><br><br>") ;
echo("<a href=\"contact.html\">Retour</a>") ;
}//fin else

$recipient = "demonjunior07@laposte.net";
$subject = "Contact";

$msg = "Pseudo:\t$pseudo\n";
$msg .= "E-Mail:\t$mail\n";
$msg .= "Message:\t$message\n";
$msg .= "Priorite:\t$priorite\n";

mail($recipient, $subject, $msg);
?>


J'ai placer un if pour une variable pour que les personnes soit obliger de remplire certain champ. Dans le cas présent il s'agit de mon champ e-mail.

Le seul problème, le formulaire marche ainsi que le if mais meme kan le champ n'est pas rempli le message est envoyer, malgre le message disant qu'il y a un champ non rempli.

Titre: Re:Formulaire PHP
Posté par: MFred le le 16-03-2005 a 19:00:17

La fonction mail() est placée en déhors de toute accolade, ainsi elle s'execute même lorsque la condition du if n'est pas remplie. Pour faire ce que tu souhaites, il fauit placer la fonction mail (l'envoi du mail) dans le premier bloc, qui ne s'execute que lorsque la condition est remplie.

Code:
<?php
$pseudo = $_POST['pseudo'];
$mail = $_POST['mail'];
$message = $_POST['message'];
$priorite = $_POST['priorite'];

//on vérifies que le champ est bien rempli:
if(!empty($_POST["mail"]))
{
echo("<p align=\"center\"><font face=\"Comic Sans MS\" size=\"2\"><font color=\"#FFFFFF\">Merci <font color=\"#FF0000\"><u>$pseudo</u></font>,<br>votre message a bien été envoyé.<br>Le webmaster va faire son possible pour vous vous répondre au plus vite à: <font color=\"#FF0000\"><u>$mail</u></font></font></font><br><br>") ;
echo("<a href=\"contact.html\">Retour</a>") ;

$recipient = "demonjunior07@laposte.net";
$subject = "Contact";

$msg = "Pseudo:\t$pseudo\n";
$msg .= "E-Mail:\t$mail\n";
$msg .= "Message:\t$message\n";
$msg .= "Priorite:\t$priorite\n";

mail($recipient, $subject, $msg);

} else {
echo("<p align=\"center\"><font face=\"Comic Sans MS\" size=\"2\"><font color=\"#FFFFFF\">Vous n'avez pas saisi votre adresse e-mail ou votre message.</font><br><br>") ;
echo("<a href=\"contact.html\">Retour</a>") ;
}//fin else

?>


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.