Générer une 2ème liste en fonction de la sélection d'une 1ère liste

tsh9
Messages postés
3
Date d'inscription
samedi 8 août 2009
Statut
Membre
Dernière intervention
15 août 2010
- 15 août 2010 à 00:30
inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014
- 16 août 2010 à 11:05
Bonjour,

J'aimerais créer une apication qui permet a un utilisateur de choisir parmi une liste de pays; cette liste est générer avec PHP en utilisant un tableau dans lequel j’ai préalablement stocké tous les pays. En soumettant un choix de pays, la même page est retournée, mais cette fois affichant une deuxième liste contenant toutes les villes de ce pays pour lequel le service météo est disponible.

Cette deuxième liste est donc composée par extraction en direct à partir du service Web -http://www.webservicex.net/globalweather.asmx/GetWeather?CityName=NV&CountryName=NP (Où NV est le nom de la ville et NP est le nom du pays recherchés).

Le nom du pays préalablement choisi doit rester sélectionné dans la liste des pays.
L'utilisateur peut alors choisir une ville dans la deuxième liste, et en soumettant le formulaire, la
même page est retournée, contenant les détails des données météo pour cette localité.

J'arrive à générer la première liste mais pas la deuxième.
Tout aide est la bienvenue.

Merci d'avance!


******** CODE PHP **********

<?php require("lib/util.lib.php"); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>La météo de la planète</title>
<link rel="stylesheet" href="css/jqtransform.css" type="text/css" media="all" />
<link rel="stylesheet" href="css/style.css" type="text/css" media="all" />

<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("jquery", "1.3.2");
</script>

<script type="text/javascript" src="js/jquery.jqtransform.js"></script>
<script type="text/javascript" src="js/jquery.form.js"></script>
<script type="text/javascript" src="js/websitechange.js"></script>

</head>






La météo à travers le monde


<form action="index.php" method="post" id="change-form">



<label for="listePays">Choisissez un pays:</label>
<select name="pays">
<?php listePays(); ?>
</select>




<?php
//if ((isset($_POST["submit"])) && (isset($_POST["deletenews"])))
if(isset($_GET["btnSubmit"]) && (isset($_GET["pays"] )!=="")) {
// L'utilisateur à soumit le formulaire
$url = "http://www.webservicex.net/globalweather.asmx/GetCitiesByCountry?CountryName=".$_GET["pays"];
$page = file_get_contents($url);

print $page;

$subject = $pages;
$villes = lireBalises($subject,"city");

echo '<select name="villes">';
foreach($villes as $ville){

$ville = trim($ville);
if(!empty($ville))
echo "<option value =".$ville.">".$ville."</option>";
}
echo '</select>';

}
?>



<label> </label>



</form>

<!--End page-wrap-->

</html>



********** Fonction php dans le fichier util.lib.php *****

function listePays(){
$tabPays = array(
"AFGHANISTAN",
"ÅLAND ISLANDS",
"ALBANIA",
"ALGERIA",
etc ...

);
for($i=0; $i< count($tabPays); $i++) {
print "<option value =".urlencode($tabPays[$i]).">".urlencode($tabPays[$i])."</option>";
}
}

tsh9

1 réponse

inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014

16 août 2010 à 11:05
Surement avec ce tutoriel ?


________________________________________
( $toBe || !$toBe ) = $this->Question();
0