Php listes déroulantes
neimad
-
neimad -
neimad -
Bonjour, mon problème est le suivant :
comment dois je procéder pour, grâce à une liste déroulante, accéder dans mon cas aux différentes pages proposées par la liste, sans qu'il y'ait besoin d'appuyer sur un boutton qui valide la requête (comme le choix des pages sur skyblog). Faut-il utiliser un formulaire?
Merci d'avance
comment dois je procéder pour, grâce à une liste déroulante, accéder dans mon cas aux différentes pages proposées par la liste, sans qu'il y'ait besoin d'appuyer sur un boutton qui valide la requête (comme le choix des pages sur skyblog). Faut-il utiliser un formulaire?
Merci d'avance
A voir également:
- Php listes déroulantes
- Listes déroulantes excel - Guide
- Listes déroulantes en cascade excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
2 réponses
voici un exemple avec des specialistes par departement
Un 1er champ est affiché avec les departements,et un deuxieme champ apparait automatiquement avec une liste de specialistes
En esperant avoir éclairé un peu...
Essaie en changeant les données
Un 1er champ est affiché avec les departements,et un deuxieme champ apparait automatiquement avec une liste de specialistes
En esperant avoir éclairé un peu...
Essaie en changeant les données
<?php
/* On établit la connexion à MySQL avec mysql_pconnect() plutôt qu'avec mysql_connect()
* car on aura besoin de la connexion un peu plus loin dans le script */
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion != false)
{
$choixbase = mysql_select_db($base, $connexion);
$sql1 = "SELECT `id_departement`, `departement`".
" FROM `departement`".
" ORDER BY `id_departement`";
$rech_depts = mysql_query($sql1);
$code_dept = array();
$dept = array();
/* On active un compteur pour les departements */
/*On gère l'affichage des depts ds le menu déroulant*/
$nb_depts = 0;
if($rech_depts != false)
{
while($ligne = mysql_fetch_assoc($rech_depts))
{
array_push($code_dept, $ligne['id_departement']);
array_push($dept, $ligne['departement']);
/* On incrémente de compteur */
$nb_depts++;
}
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgdept">
<fieldset style="border: 0px">
<legend> <h4>Choisissez un spécialiste dans votre département</h4>
</legend>
<select name="departement" id="departement" onchange="document.forms['chgdept'].submit();">
<option value="-1">- - - Choisissez un departement - - -</option>
<?php
for($i = 0; $i < $nb_depts; $i++)
{
?>
<option value="<?php echo($code_dept[$i]); ?>"<?php echo((isset($idr) && $idr == $code_dept[$i])?" selected=\"selected\"":null); ?>><?php echo($dept[$i]); ?></option>
<?php
}
?>
</select>
<?php
mysql_free_result($rech_depts);
/* On commence par vérifier si on a envoyé un numéro de departement et le cas échéant s'il est différent de -1 */
if(isset($idr) && $idr != -1)
{
/* Création de la requête pour avoir les specialistes de ce departement */
$sql2 = "SELECT `id_specialiste`, `specialiste`,`ville`,`detail`".
" FROM `specialiste`".
" WHERE `id_departement` = ". $idr ."".
" ORDER BY `ville`;";
if($connexion != false)
{
$rech_spec = mysql_query($sql2, $connexion);
/* Un petit compteur pour les specialistes */
$nd = 0;
/* On crée trois tableaux pour les numéros et les noms des specialistes */
$code_spec = array();
$nom_spec = array();
$ville_spec = array();
$det_spec = array();
/* On va mettre les numéros et noms des specialistes dans les trois tableaux */
while($ligne_spec = mysql_fetch_assoc($rech_spec))
{
array_push($code_spec, $ligne_spec['id_specialiste']);
array_push($nom_spec, $ligne_spec['specialiste']);
array_push($ville_spec, $ligne_spec['ville']);
array_push($det_spec, $ligne_spec['detail']);
$nd++;
}
/* Maintenant on peut construire la liste déroulante */
?>
<select name="specialiste" id="specialiste" >
<?php
for($d = 0; $d<$nd; $d++)
{
?>
<option value="<?php echo($nom_spec[$d]); ?>"<?php echo((isset($spec_selectionne) && $spec_selectionne == $code_spec[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_spec[$d]." "); ?>
<br>
<br />
<?php echo ($det_spec[$d]." ".à." "); ?>
<br>
<br />
<?php echo($ville_spec[$d]); ?></option>
<?php
}
?>
</select>
<?php
}
/* Un petit coup de balai */
mysql_free_result($rech_spec);
}
?>
<input type="submit" name="ok" id="ok" value="Envoyer" />
<br />
<?php
if(isset($_POST['ok']) && isset($_POST['specialiste']) && $_POST['specialiste'] != "")
{
$spec_selectionne =$_POST['specialiste'];
?>
<br />Votre choix<br /> <b><?php echo($spec_selectionne); ?></b>
<?php
}
?>
<?php
$query = "SELECT specialiste, adresse, code, ville, detail, tel FROM specialiste WHERE specialiste='$spec_selectionne' order by ville asc";
$result = mysql_query($query);
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
echo "<br>"."<strong>{$row['detail']}</strong>"." " ."<br>{$row['adresse']}"." "."{$row['code']}"." "."{$row['ville']}"." "." "."<br><b>{$row['tel']}"."<br></b> ";
}
/* Terminé, on ferme la connexion */
mysql_close($connexion);
}
else
{
/* Si on arrive là, c'est pas bon signe, il faut vérifier les
* paramètres de connexion, mot de passe, serveur pas démarré etc... */
?>