probleme avec un submit

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 : probleme avec un submit

Re: probleme avec un submit

par touiks » 09 déc. 2010, 11:40

Tu as essayé de mettre toutes tes variables post dans une session et faire un header(location) dans ta vérification ?

Cela donnerai :
 if ( !empty($_POST['bouton']) && $_POST['bouton']=="Valider")
   {
      $_SESSION['mesVariablesPost']=$_POST;
      header('location:creermanif2.php');
   }
Ensuite tu récupère ta variable de session sur la page creermanif2.php
Si tu ne veux pas changer ton script de traitement derrière fais ça :
$_POST=$_SESSION['mesVariablesPost'];
C'est un peu barbare comme manière de faire mais si ça peut t'aider... :D

probleme avec un submit

par djdelarue » 23 nov. 2010, 15:11

Bonjour, voila en faite je galere depuis quelques temps déjà pour pouvoir envoyer mes données sur une autre page.
J'explique, en faite mon client saisie toute ses données, si il choisit une ville cela recharge la page et si c'est autre ville ça rajoute deux nouveaux champs a remplir.
Jusque la tout fonctionne, mais quand je clique sur envoyer, ça me renvoi sur la page actuel ce qui est normal car mon code est fait ainsi

Code : Tout sélectionner

<?php echo '<form method="post" action="creermanif.php">'; //mon code $ville="select ville from ville"; $ville2=mysql_query($ville); $ville=mysql_fetch_array($ville2); $liste = '<select name="liste1" onChange="this.form.submit()">'; while ($ville) { if ($ville['ville']==@$_POST['liste1']) { $liste = $liste . '<option value="'.$ville['ville'].'" selected>'.$ville['ville'].'</option>'; } else { $liste = $liste . '<option value="'.$ville['ville'].'">'.$ville['ville'].'</option>'; } $ville=mysql_fetch_array($ville2); } $liste = $liste . '</select></form>'; echo '<tr><td>Ville</td><td>'.$liste.'</td></tr>'; if ( !empty($_POST['liste1']) && $_POST['liste1']=="Autre ville") { echo '<tr><td>Code Postal :</td><td><input type="text" name="cp" id="cp" size="50"></td></tr> <tr><td>Ville</td><td><input type="text" name="ville" id="ville" size="50"></td></tr>'; } ?> <table> <tr><td><input name='annuler' type='reset' value='Annuler'></td> <td><INPUT type="submit" name="bouton" value="Valider"></td></tr> </table>
il faut que je fasse cela pour aller sur mon autre page

Code : Tout sélectionner

<?php echo '<form method="post" action="creermanif.php">'; //mon code ?> <table> <form method="post" action="creermanif2.php"> <tr><td><input name='annuler' type='reset' value='Annuler'></td> <td><INPUT type="submit" name="bouton" value="Valider"></td></tr> </table>
seulement vu que je fais l'action après tout mon formulaire, quand on clique sur valider, aucun $_POST n'est renseigné

Donc je voudrais savoir si vous avez une idée pour comment faire :s

J'ai pensé à ça:

Code : Tout sélectionner

if ( !empty($_POST['bouton']) && $_POST['bouton']=="Valider") { echo '<form method="post" action="creermanif2.php">'; echo "<script type='text/javascript'> Valider(this.form); </script>"; } else { echo '<form method="post" action="creermanif.php">'; }
sachant que Valider(this.form) renvoi juste formulaire.submit() comme c'est du javascript.

Cette syntaxe fonctionne mais je dois cliquez deux fois sur valider pour aller sur l'autre page ce qui est très moyen