Aller au contenu

Problème de formulaire avec Combo box !


tungsten

Sujets conseillés

Bonjour,

je viens de tester un formulaire ou plutôt adapter "envoi.php" à mon formulaire perso, et cela fonctionne très très bien ! Bravo pour cette simplicité et clarté de compréhension dans le code.

Cependant j'aimerai de l'aide par rapport à mon formulaire, car lorsque je sélectionne le champ Piscine, j'ai un lien url automatique qui ne me laisse pas le temps de valider mon formulaire, c'est embêtant !!

D'autre part comment faire pour rediriger le client vers une autre page, une fois le formulaire validé ??

D'avance un grand merci pour une éventuelle aide, je sais qu'il ne doit me manquer grand chose mais je ne vois pas ?!!

Formulaire

<?php

//déclaration des variables//

$nom=$HTTP_POST_VARS['nom'];

$mail=$HTTP_POST_VARS['mail'];

$message=$HTTP_POST_VARS['message'];

$pays=$HTTP_POST_VARS['Pays'];

$villes=$HTTP_POST_VARS['Villes'];

$piscines=$HTTP_POST_VARS['Piscines'];



//headers//

$headers = "MIME-Version: 1.0\r\n";

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";



//destinataire//

$destinataire = "tungsten_AT_wanadoo.fr";



//objet//

$objet = "$themes";



//message//

$corps = "\n";

$corps .= "noms : $nom \n";

$corps .= "email : $mail \n";

$corps .= "message : $message \n";

$corps .= "pays : $Pays \n";

$corps .= "villes : $Villes \n";

$corps .= "piscines : $Piscines \n";



//verification des champs obligatoires//

if ($nom == "" || $mail == "" || $message == "" || $Pays == "" || $Villes == "")

{

echo "Certains des champs obligatoires n'ont pas été renseignés, veuillez recommencer...<a href='java script:history.go(-1)'>Retour</a>";

}//si champ manquant envoi d'un message avec un bouton retour//

else

{

echo "Merci, votre formulaire nous est bien parvenu, nous vous repondrons dans les plus brefs delais !";

mail($destinataire,$objet,$corps,$headers);

}//si champ ok envoi//

?>

Modifié par Vincent
Lien vers le commentaire
Partager sur d’autres sites

J'avoue ne pas bien comprendre ce qui ne fonctionne pas sur ton formulaire (je viens d'aller sur ton lien ) , as tu plus de précision stp ?

Pour rediriger l'utilisateur le plus propre est l'utilisation de l'instruction header en php

http://fr.php.net/header

tu peux le faire également via le meta refresh en html ou bien encore en javascript avec un windows.location..... :)

Modifié par astrofiles
Lien vers le commentaire
Partager sur d’autres sites

Plus simplement, je viens tout juste de réussir à installer une redirection dans mon fichier envoi.php, et cela fonctionne très bien !

seulement le problème c'est que la redirection fonctionne même si les champs obligatoires n'ont pas été remplis,

ce qui signifie que lorsque le message d'erreur indiquant au client de revenir en arrière pour corriger les champs oubliés, eh bien 3 secondes après, la redirection s'enclenche également !!

Le client perd donc le contact avec le formulaire et perd tout son contenu !

je pense que cela doit-être une histoite de header("Refresh: 3; URL=./admin.php"); mal placé ?

Formulaire test

Envoi.php

remerciements.php

Dernier détail, j'ai remplacé dans envoi.php :

echo "Merci, votre formulaire nous est bien parvenu, nous vous repondrons dans les plus brefs delais !";

par

echo ("URL=./remerciements.php");

Mais le message contenu dans remerciements.php ne s'affiche pas ??!

Aurais-je encore oublié un détail ?

Merci pour tout...

Modifié par tungsten
Lien vers le commentaire
Partager sur d’autres sites

Oui c'est parfait !!

merci pour ton aide.

Il ne me reste plus qu'à gérer le problème de redirection qui s'effectue même si les champs obligatoires n'ont pas étés remplis.

C'est sûrement une histoire de condition mais comment l'écrire ??...

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...