renvoi à l'accueil a la fin d'un formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : renvoi à l'accueil a la fin d'un formulaire

Re: renvoi à l'accueil a la fin d'un formulaire

par stephbarri » 31 mai 2019, 15:15

Merci beaucoup!
Cela fonctionne mieux comme cela.
C'est trop simple pour ma tête compliquée...
Bonne fin de journée

Re: renvoi à l'accueil a la fin d'un formulaire

par Saian » 31 mai 2019, 14:36

Ça doit être un vieux code que tu as là. Dans les versions récentes de php les fonction mysql_* n'existent plus.

Code : Tout sélectionner

<?php $base = mysql_connect ('sql.free.fr','xxxx','xxxx') or die ( 'Erreur lors de la connexion au serveur.' ); mysql_select_db( 'sondage' ) or die ( 'Erreur lors de la connexion Ãf la base de donnÃf©e.' ); if (isset ($_POST['valider'])){ //On rÃf©cupÃf¨re les valeurs entrÃf©es par l'utilisateur : $section=$_POST['section']; $horaires=$_POST['horaires']; $comments_horaires=$_POST['comments_horaires']; $ambiance=$_POST['ambiance']; $organisation=$_POST['organisation']; $cours=$_POST['cours']; $grade=$_POST['grade']; $competition=$_POST['competition']; $comments_cours=$_POST['comments_cours']; $evolution=$_POST['evolution']; $inscription=$_POST['inscription']; $commentaires=$_POST['commentaires']; $nom=$_POST['nom']; //On se connecte { $base = mysql_connect ('sql.free.fr','xxx','xxx') or die ( 'Erreur lors de la connexion au serveur.' ); mysql_select_db( 'sondage' ) or die ( 'Erreur lors de la connexion Ãf la base de donnÃf©e.' ); } //On prÃf©pare la commande sql d'insertion $sql = 'INSERT INTO sondage VALUES("","'.$section.'","'.$horaires.'","'.$comments_horaires.'","'.$ambiance.'","'.$organisation.'","'.$cours.'","'.$grade.'","'.$competition.'","'.$comments_cours.'","'.$evolution.'","'.$inscription.'","'.$commentaires.'","'.$nom.'")'; /*on lance la commande (mysql_query) et au cas oÃf¹, on rÃf©dige un petit message d'erreur si la requÃfªte ne passe pas (or die) (Message qui intÃf¨grera les causes d'erreur sql)*/ mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); // on ferme la connexion mysql_close(); // Renvoi à la page de remerciement header("location:http://smstkd.free.fr/index.html"); exit(); } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <h2>&nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp DONNER VOTRE AVIS<br /> &nbsp &nbsp &nbsp NOUS PERMETTRA D'AMELIORER<br /> &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp LA QUALITE DES COURS</h2> <title>SONDAGE 2019</title> <!-- on definit le lien avec css --> <link href="formulaire.css" rel="stylesheet" type="text/css" /> </head> <body> <!-- url qui va recevoir les donnees --> <form name="sondage" method="post" action="sondage.php"> <!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme" pour le sondage--> <p class="titre">Votre section</p> <fieldset id="sondage"> <!--input radio: case ronde à cocher--> <p id="section"><label><b>Votre section : </b></label> <input type="radio" name="section" value="Baby" />Baby<br /> <input type="radio" name="section" value="Enfants" />Enfants<br /> <input type="radio" name="section" value="Ados" />Ados<br /> <input type="radio" name="section" value="Adultes" />Adultes<br /> <input type="radio" name="section" value="Body" />Body </p> <br> <!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des généralités--> <p class="titre">HORAIRES DES COURS</p> <fieldset id="sondage"> <input type="radio" name="horaires" value="Satisfait" />Satisfait<br /> <input type="radio" name="horaires" value="Neutre" />Neutre<br /> <input type="radio" name="horaires" value="Insatisfait" />Insatisfait<br /> </fieldset> <p class="titre">HORAIRES: VOTRE AVIS</p> <fieldset id="message"> <!--case obs texte--> <textarea name="comments_horaires" rows="5" cols="40"></textarea> </fieldset> <!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des cours--> <p class="titre">Avis sur les cours</p> <fieldset id="sondage"> <p id="ambiance"><label><b>Ambiance générale : </b></label> <input type="radio" name="ambiance" value="Satisfait" />Satisfait<br /> <input type="radio" name="ambiance" value="Neutre" />Neutre<br /> <input type="radio" name="ambiance" value="Insatisfait" />Insatisfait<br /> <p id="ambiance"><label><b><u>Organisation des cours : </u></b></label> <input type="radio" name="organisation" value="Satisfait" />Satisfait<br /> <input type="radio" name="organisation" value="Neutre" />Neutre<br /> <input type="radio" name="organisation" value="Insatisfait" />Insatisfait<br /> <p id="ambiance"><label><b><u>Votre évolution personnelle : </u></b></label><br> <p id="ambiance"><label><b>Bénéfice des cours : </b></label> <input type="radio" name="cours" value="Satisfait" />Satisfait<br /> <input type="radio" name="cours" value="Neutre" />Neutre<br /> <input type="radio" name="cours" value="Insatisfait" />Insatisfait<br /> <p id="ambiance"><label><b>Préparation passage grade : </b></label> <input type="radio" name="grade" value="Satisfait" />Satisfait<br /> <input type="radio" name="grade" value="Neutre" />Neutre<br /> <input type="radio" name="grade" value="Insatisfait" />Insatisfait<br /> <p id="ambiance"><label><b>Préparation compétition : </b></label> <input type="radio" name="competition" value="Satisfait" />Satisfait<br /> <input type="radio" name="competition" value="Neutre" />Neutre<br /> <input type="radio" name="competition" value="Insatisfait" />Insatisfait<br /> </fieldset> <p class="titre">Vos pistes d'amélioration pour les cours</p> <fieldset id="message"> <!--case obs texte--> <textarea name="comments_cours" rows="5" cols="40"></textarea> </fieldset> <!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des évol ados adultes--> <p class="titre">Nouveaux horaires du samedi</p> <fieldset id="sondage"> <p id="evolution"><label><b>Pour les enfants on propose de basculer les cours au samedi matin:</b></label><br /><br /> <input type="radio" name="evolution" value="samedi matin" />Ok pour samedi matin<br /> <input type="radio" name="evolution" value="samedi 15h15" />Maintien samedi après-midi<br /> </fieldset> <!-- deux blocs "p" et "titre" pour le css et "fieldset" réinscription--> <p class="titre">Réinscription la saison prochaine</p> <fieldset id="sondage"> <p id="reinscription"><label><b>Envisagez-vous de vous réinscrire la saison prochaine:</b></label><br /><br /> <input type="radio" name="inscription" value="oui" />OUI<br /> <input type="radio" name="inscription" value="non" />NON<br /> <input type="radio" name="inscription" value="nsp" />Ne sais pas<br /> </fieldset> <p class="titre">A vos commentaires</p> <fieldset id="message"> <!--case obs texte--> <textarea name="commentaires" rows="5" cols="40"></textarea> </fieldset> <!--case à renseigner par texte "NOM FACULTATIF"--> <p class="titre">FACULTATIF: VOTRE NOM</p> <fieldset id="sondage"> <input type="text" name="nom" size="30" /><br /> </fieldset> <!-- envoi du formulaire --> <p id="boutons"> <input type="submit" name="valider" value="Envoyer" /> <input type="reset" name="annuler" value="Recommencer" /> </p> </form> </body> </html>

Re: renvoi à l'accueil a la fin d'un formulaire

par stephbarri » 31 mai 2019, 13:25

Cela doit être la fatigue, je n'y arrive pas.

Soit cela me renvoie sur la page d'accueil immédiatement avec le

header("location:http://smstkd.free.fr/index.html");

soit cela me met l'erreur de header déjà ouvert!

On voit que je suis resté un moment sans pratiquer...

Re: renvoi à l'accueil a la fin d'un formulaire

par stephbarri » 31 mai 2019, 09:36

Merci
Je vais essayer ce soir.
Bonne journée
Stéph

Re: renvoi à l'accueil a la fin d'un formulaire

par Saian » 30 mai 2019, 23:12

Bonsoir, et bien tu dois simplement déporter tout le bloc if (isset ($_POST['valider'])){ tout en haut du fichier avant toute sortie html.

renvoi à l'accueil a la fin d'un formulaire

par stephbarri » 30 mai 2019, 19:04

Bonjour,
Je m'occupe du site d'un club sportif, sur lequel j'ai un questionnaire de satisfaction.
Je n'arrive pas à renvoyer le visiteur sur la page d'accueil du site à l'issue.
Au vu de l'erreur, j'ai bien compris que cette ligne du header("location ") ne doit pas apparaitre après l'affichage de données, mais malgré mes tests, je ne sais pas ou le mettre.

Quelqu'un a-t-il la solution?

merci pour votre aide
Steph

<?php
{
$base = mysql_connect ('sql.free.fr','xxxx','xxxx') or die ( 'Erreur lors de la connexion au serveur.' );
mysql_select_db( 'sondage' ) or die ( 'Erreur lors de la connexion Ãf  la base de donnÃf©e.' );
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<h2>&nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp DONNER VOTRE AVIS<br />
&nbsp &nbsp &nbsp NOUS PERMETTRA D'AMELIORER<br />
&nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp LA QUALITE DES COURS</h2>
<title>SONDAGE 2019</title>
<!-- on definit le lien avec css -->
<link href="formulaire.css" rel="stylesheet" type="text/css" />
</head>
<body>
<!-- url qui va recevoir les donnees -->
<form name="sondage" method="post" action="sondage.php">
<!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme" pour le sondage-->
<p class="titre">Votre section</p>
<fieldset id="sondage">
<!--input radio: case ronde à cocher-->
<p id="section"><label><b>Votre section : </b></label>
<input type="radio" name="section" value="Baby" />Baby<br />
<input type="radio" name="section" value="Enfants" />Enfants<br />
<input type="radio" name="section" value="Ados" />Ados<br />
<input type="radio" name="section" value="Adultes" />Adultes<br />
<input type="radio" name="section" value="Body" />Body
</p>
<br>
<!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des généralités-->
<p class="titre">HORAIRES DES COURS</p>
<fieldset id="sondage">
<input type="radio" name="horaires" value="Satisfait" />Satisfait<br />
<input type="radio" name="horaires" value="Neutre" />Neutre<br />
<input type="radio" name="horaires" value="Insatisfait" />Insatisfait<br />
</fieldset>
<p class="titre">HORAIRES: VOTRE AVIS</p>
<fieldset id="message">
<!--case obs texte-->
<textarea name="comments_horaires" rows="5" cols="40"></textarea>
</fieldset>
<!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des cours-->
<p class="titre">Avis sur les cours</p>
<fieldset id="sondage">
<p id="ambiance"><label><b>Ambiance générale : </b></label>
<input type="radio" name="ambiance" value="Satisfait" />Satisfait<br />
<input type="radio" name="ambiance" value="Neutre" />Neutre<br />
<input type="radio" name="ambiance" value="Insatisfait" />Insatisfait<br />
<p id="ambiance"><label><b><u>Organisation des cours : </u></b></label>
<input type="radio" name="organisation" value="Satisfait" />Satisfait<br />
<input type="radio" name="organisation" value="Neutre" />Neutre<br />
<input type="radio" name="organisation" value="Insatisfait" />Insatisfait<br />
<p id="ambiance"><label><b><u>Votre évolution personnelle : </u></b></label><br>
<p id="ambiance"><label><b>Bénéfice des cours : </b></label>
<input type="radio" name="cours" value="Satisfait" />Satisfait<br />
<input type="radio" name="cours" value="Neutre" />Neutre<br />
<input type="radio" name="cours" value="Insatisfait" />Insatisfait<br />
<p id="ambiance"><label><b>Préparation passage grade : </b></label>
<input type="radio" name="grade" value="Satisfait" />Satisfait<br />
<input type="radio" name="grade" value="Neutre" />Neutre<br />
<input type="radio" name="grade" value="Insatisfait" />Insatisfait<br />
<p id="ambiance"><label><b>Préparation compétition : </b></label>
<input type="radio" name="competition" value="Satisfait" />Satisfait<br />
<input type="radio" name="competition" value="Neutre" />Neutre<br />
<input type="radio" name="competition" value="Insatisfait" />Insatisfait<br />
</fieldset>
<p class="titre">Vos pistes d'amélioration pour les cours</p>
<fieldset id="message">
<!--case obs texte-->
<textarea name="comments_cours" rows="5" cols="40"></textarea>
</fieldset>
<!-- deux blocs "p" et "titre" pour le css et "fieldset" mise en forme des évol ados adultes-->
<p class="titre">Nouveaux horaires du samedi</p>
<fieldset id="sondage">
<p id="evolution"><label><b>Pour les enfants on propose de basculer les cours au samedi matin:</b></label><br /><br />
<input type="radio" name="evolution" value="samedi matin" />Ok pour samedi matin<br />
<input type="radio" name="evolution" value="samedi 15h15" />Maintien samedi après-midi<br />
</fieldset>
<!-- deux blocs "p" et "titre" pour le css et "fieldset" réinscription-->
<p class="titre">Réinscription la saison prochaine</p>
<fieldset id="sondage">
<p id="reinscription"><label><b>Envisagez-vous de vous réinscrire la saison prochaine:</b></label><br /><br />
<input type="radio" name="inscription" value="oui" />OUI<br />
<input type="radio" name="inscription" value="non" />NON<br />
<input type="radio" name="inscription" value="nsp" />Ne sais pas<br />
</fieldset>

<p class="titre">A vos commentaires</p>
<fieldset id="message">
<!--case obs texte-->
<textarea name="commentaires" rows="5" cols="40"></textarea>
</fieldset>
<!--case à renseigner par texte "NOM FACULTATIF"-->
<p class="titre">FACULTATIF: VOTRE NOM</p>
<fieldset id="sondage">
<input type="text" name="nom" size="30" /><br />
</fieldset>

<!-- envoi du formulaire -->
<p id="boutons">
<input type="submit" name="valider" value="Envoyer" />
<input type="reset" name="annuler" value="Recommencer" />
</p>
</form>

<?

if (isset ($_POST['valider'])){
//On rÃf©cupÃf¨re les valeurs entrÃf©es par l'utilisateur :
$section=$_POST['section'];
$horaires=$_POST['horaires'];
$comments_horaires=$_POST['comments_horaires'];
$ambiance=$_POST['ambiance'];
$organisation=$_POST['organisation'];
$cours=$_POST['cours'];
$grade=$_POST['grade'];
$competition=$_POST['competition'];
$comments_cours=$_POST['comments_cours'];
$evolution=$_POST['evolution'];
$inscription=$_POST['inscription'];
$commentaires=$_POST['commentaires'];
$nom=$_POST['nom'];



//On se connecte
{
$base = mysql_connect ('sql.free.fr','xxx','xxx') or die ( 'Erreur lors de la connexion au serveur.' );
mysql_select_db( 'sondage' ) or die ( 'Erreur lors de la connexion Ãf  la base de donnÃf©e.' );
}

//On prÃf©pare la commande sql d'insertion
$sql = 'INSERT INTO sondage VALUES("","'.$section.'","'.$horaires.'","'.$comments_horaires.'","'.$ambiance.'","'.$organisation.'","'.$cours.'","'.$grade.'","'.$competition.'","'.$comments_cours.'","'.$evolution.'","'.$inscription.'","'.$commentaires.'","'.$nom.'")';


/*on lance la commande (mysql_query) et au cas oÃf¹,
on rÃf©dige un petit message d'erreur si la requÃfªte ne passe pas (or die)
(Message qui intÃf¨grera les causes d'erreur sql)*/
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());

// on ferme la connexion
mysql_close();
// Renvoi à la page de remerciement
header("location:http://smstkd.free.fr/index.html");

exit();

}

?>
</body>
</html>