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
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]
<?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>
[/code]
il faut que je fasse cela pour aller sur mon autre page
[code]
<?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>
[/code]
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] 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">';
}[/code]
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