formulaire qui n'arrive pas :-(

Boro
Invité n'ayant pas de compte PHPfrance

10 déc. 2006, 13:05

Bonjour, je débute en php, mais là je comprends plus rien. Voilà je dois faire un formulaire de reservation, pour la création non pb, la vérif se fait aussi, mais le formulaire ne part jamais ....???
Je suis certain d'avoir oublié ou mal compris qque chose, mais je ne vois pas quoi... :(
voici le code :
<?php
	$nombre = $_POST['nombre'];
	$nom = $_POST['nom'];
	$email = $_POST['email'];
	$adresse = $_POST['adresse'];
	
	if(empty($nombre))
	{
	print ("<center>Le nombre doit être renseigné</center>");
	exit();
	}
	if (empty($nom))
	{
	print ("<center>Le nom doit être renseigné</center>");
	exit();
	}
	if(empty($email))
	{
	print ("<center>Votre email doit être renseigné</center>");
	exit();
	}
	if(empty($adresse))
	{
	print ("<center>Votre adresse doit être renseignée!</center>");
	exit();
	}
	else
	{
	echo ('Merci. Votre demande a bien été envoyée; nous vous contactons très vite');
	exit();
	}
	
	mail(
	"[email protected]",
	"test du form ",
	$_POST['nombre'],
	$_POST['nom'],
	$_POST['email'],
	$_POST['adresse']);
	
	?>
Merci de votre aide

Mammouth du PHP | 19672 Messages

10 déc. 2006, 13:17

Normal : tu testes si aucune des valeurs envoyées n'est vide, là, c'est ok, si il y en a une de vide, tu fais un exit() (mauvaise solution, mais bon, le principe est là) par contre dans le else, tu envoies le message et tu fais également un exit() avant d'envoyer le message : ta fonction mail() n'est donc jamais exécutés.

Es-tu sûr d'avoir bien saisi ce que fait la fonction exit() :?:

Proposition de correction:
<?php
$nombre  = $_POST['nombre'];
$nom     = $_POST['nom'];
$email   = $_POST['email'];
$adresse = $_POST['adresse'];

if(empty($nombre))
{
    print ("<center>Le nombre doit être renseigné</center>");
    exit();
}
elseif (empty($nom))
{
    print ("<center>Le nom doit être renseigné</center>");
    exit();
}
elseif(empty($email))
{
    print ("<center>Votre email doit être renseigné</center>");
    exit();
}
elseif(empty($adresse))
{
    print ("<center>Votre adresse doit être renseignée!</center>");
    exit();
}
else
{
    mail(
        "[email protected]",
        "test du form ",
        $_POST['nombre'],
        $_POST['nom'],
        $_POST['email'],
        $_POST['adresse']);
    echo ('Merci. Votre demande a bien été envoyée; nous vous contactons très vite');
    exit();
}
?>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Boro
Invité n'ayant pas de compte PHPfrance

10 déc. 2006, 19:18

Bonsoir, et grand merci à toi....Non seulement je suis débutant, mais en plus je relis mal mes scripts... :oops: Honte à moi et mille remerciements à toi Cyrano.