[PHP]problème avec deux boutons

Fermé
lifecraft Messages postés 20 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 28 juillet 2008 - 20 juin 2005 à 10:35
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 22 juin 2005 à 18:34
Bonjours
voila j'ai un formulaire avec dedans deux listes déroulantes l'une affichant une liste de pays puis en cliquant sur un bouton j'affiche les villes correspondantes aux pays selectionné dans une autre liste déroulante puis je reclique sur un autre bouton "afficher" pour afficher le détails de la ville .Mon problème est que l'affichage des détails se fait lorsque je clique sur le premier bouton alors que je voudrais que ca se fasse sur le deuxième :
Voici le code:

echo '<form method="POST" action="pays1.php">';
echo '<select name="PAys" id="menupays">';

$resultat=mysql_query("select PAYS from t_pays order by PAYS") or die (mysql_error());

while ($ligne=mysql_fetch_array($resultat))
{
$selected=($ligne["PAYS"]==$_POST["PAys"])?" selected":"" ;
echo '<option '.$selected.'>'.$ligne["PAYS"].'</option>';
}

echo '</select>';
echo '<input type="submit" value="Valider le pays et ci-dessous , sélectionner une ville.">';
echo '</form>';
echo '<option>'.$ligne["PAYS"].'</option>';

if(!isset($_POST['PAys']))
{
   exit;
}
$PAys = $_POST['PAys'];
echo '<br>';

echo '<select name="VIlles" id="menuvilles">';
$resultat1=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());

while($ligne3=mysql_fetch_array($resultat1))
{
$selected2=($ligne3["VILLE"]==$_POST["VIlles"])?" selected":"" ;
echo '<option '.$selected2.'>'.$ligne3["VILLE"].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher">';


$resultat2=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());
$ligne2=mysql_fetch_array($resultat2);

if($ligne2['PAYS']<>"")
{
echo ' <b>Pays : </b>'.$ligne2['PAYS'].'';
}

merci de m'aider !!
A voir également:

10 réponses

lifecraft Messages postés 20 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 28 juillet 2008
20 juin 2005 à 11:36
up please !!
0
UP !!!
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
21 juin 2005 à 16:16
Tu as oublié de rouvrir un <form>.
0
lifecraft Messages postés 20 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 28 juillet 2008
22 juin 2005 à 14:42
ah oui c'est vrai ! je l'ai réouvert mais le deuxième bouton ne réagit toujours pas !
echo '<p>Choisissez un pays partenaire :</p>';

echo '<form method="POST" action="pays.php">';
echo '<select name="PAys" id="menupays">';

$resultat=mysql_query("select PAYS from t_pays order by PAYS") or die (mysql_error());

while ($ligne=mysql_fetch_array($resultat))
{
$selected=($ligne["PAYS"]==$_POST["PAys"])?" selected":"" ;
echo '<option '.$selected.'>'.$ligne["PAYS"].'</option>';
}

echo '</select>';
echo '<input type="submit" value="Valider le pays et ci-dessous , sélectionner une ville.">';

echo '<option>'.$ligne["PAYS"].'</option>';

if(!isset($_POST['PAys']))
{
   exit;
}
$PAys = $_POST['PAys'];
echo '<br>';

echo '<select name="VIlles" id="menuvilles">';
$resultat1=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());

while($ligne3=mysql_fetch_array($resultat1))
{
$selected2=($ligne3["VILLE"]==$_POST["VIlles"])?" selected":"" ;
echo '<option '.$selected2.'>'.$ligne3["VILLE"].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher">';
echo '</form>';
echo '<form method="POST" action="pays.php">';
echo "<br>";
echo "<br>";

$resultat2=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());
$ligne2=mysql_fetch_array($resultat2);

if($ligne2['PAYS']<>"")
{
echo ' <b>Pays : </b>'.$ligne2['PAYS'].'';
}

if($ligne2['VILLE']<>"")
{
echo ' , <u>Ville :</u> '.$ligne2['VILLE'].'';
}

if($ligne2['REGION']<>"")
{
echo ' , <u>Région :</u> '.$ligne2['REGION'].'';
}

if($ligne2['SITEINTERNETREGION']<>"")
{
echo ' , <u>Région :</u> '.$ligne2['SITEINTERNETREGION'].'';
}

echo '</form>';


MERCI !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
22 juin 2005 à 14:45
Tu pourrais citer la source html?
On verra peut être mieux comme ça.
Le deuxième submit ne fait vraiment rien du tout?
0
Timon1102 Messages postés 354 Date d'inscription jeudi 2 juin 2005 Statut Membre Dernière intervention 30 décembre 2010 109
22 juin 2005 à 15:06
moi je vois 2 submit dans le mm form et aucun dans le 2eme
0
lifecraft Messages postés 20 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 28 juillet 2008
22 juin 2005 à 15:25
C'est quoi une source html ?
et si je ferme mon form et que je l'ouvre plus haut (avant le deuwième submit ) ca me charge la page pays.php comme au démarage (c'est à dire avec juste ma première liste et un bouton )

en fait je ne sais pas quand fermer et/ou réouvrir un <form>
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
22 juin 2005 à 15:45
Je comprends pas bien ton truc.
En tout cas pour les balises <form>

Ca se passe comme ça:
<form>
Tes inputs,select, ckeckbox etc.... bref tout ce qui compose un formulaire.
Et enfin ton submit (un seul)
</form>

La source html c'est quand tu cliques droit sur la page et que tu choisis "afficher la source" (selon le navigateur, ça peut varier).
C'est le code html final de la page.
Tu pourrais nous le citer ici? (juste la partie avec les deux formulaires).
0
lifecraft Messages postés 20 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 28 juillet 2008
22 juin 2005 à 16:37
ah okok bon je remet le code php que j'ai la parceque je crois je l'ai modifié mais ca me remet pareil le bouton afficher quand on clique dessus revient au point de départ :
echo '<p>Choisissez un pays partenaire :</p>';

echo '<form method="POST" action="pays.php">';
echo '<select name="PAys" id="menupays">';

$resultat=mysql_query("select PAYS from t_pays order by PAYS") or die (mysql_error());

while ($ligne=mysql_fetch_array($resultat))
{
$selected=($ligne["PAYS"]==$_POST["PAys"])?" selected":"" ;
echo '<option '.$selected.'>'.$ligne["PAYS"].'</option>';
}

echo '</select>';
echo '<input type="submit" value="Valider le pays et ci-dessous , sélectionner une ville.">';
echo '</form>';
echo '<form method="POST" action="pays.php">';
echo '<option>'.$ligne["PAYS"].'</option>';

if(!isset($_POST['PAys']))
{
   exit;
}
$PAys = $_POST['PAys'];
echo '<br>';

echo '<select name="VIlles" id="menuvilles">';
$resultat1=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());

while($ligne3=mysql_fetch_array($resultat1))
{
$selected2=($ligne3["VILLE"]==$_POST["VIlles"])?" selected":"" ;
echo '<option '.$selected2.'>'.$ligne3["VILLE"].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher">';
echo '</form>';
echo '<form method="POST" action="pays.php">';
echo "<br>";
echo "<br>";

$resultat2=mysql_query("select * from partenaires_étrangers where partenaires_étrangers.PAYS='$PAys'") or die (mysql_error());
$ligne2=mysql_fetch_array($resultat2);

if($ligne2['PAYS']<>"")
{
echo ' <b>Pays : </b>'.$ligne2['PAYS'].'';
}

if($ligne2['VILLE']<>"")
{
echo ' , <u>Ville :</u> '.$ligne2['VILLE'].'';
}

if($ligne2['REGION']<>"")
{
echo ' , <u>Région :</u> '.$ligne2['REGION'].'';
}

if($ligne2['SITEINTERNETREGION']<>"")
{
echo ' , <u>Région :</u> '.$ligne2['SITEINTERNETREGION'].'';
}

echo '</form>';


Sinon voici la source html de la partie php:

<div id="Layer1" style="position:absolute; left:127px; top:365px; width:752px; height:23px; z-index:0">
<p>Choisissez un pays partenaire :</p><form method="POST" action="pays.php"><select name="PAys" id="menupays"><option >Allemagne</option><option >Belgique</option><option >Canada</option><option >Ecosse</option><option >Etats Unis</option><option >Irlande</option><option >Israël</option><option >Italie</option><option >Japon</option><option  selected>Luxembourg</option><option >Mali</option><option >Pologne</option><option >Portugal</option><option >République Tchèque</option><option >Roumanie</option><option >Royaume Uni</option><option >Sénégal</option><option >Slovaquie</option><option >Ukraine</option></select><input type="submit" value="Valider le pays et ci-dessous , sélectionner une ville."></form><form method="POST" action="pays.php"><option></option><br><select name="VIlles" id="menuvilles"><br />

<b>Notice</b>:  Undefined index:  VIlles in <b>c:\program files\easyphp1-8\www\nouveau dossier\final de chez final\pays.php</b> on line <b>133</b><br />
<option >Vianden</option></select><input type="submit" value="Afficher"></form><form method="POST" action="pays.php"><br><br> <b>Pays : </b>Luxembourg , <u>Ville :</u> Vianden</form></div>
<div align="center">
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
22 juin 2005 à 18:34
Tu as une variable qui ne passe pas dans ton second formulaire.
Regarde à la ligne 133....
0