afficher résultat à partir d'une liste déroulante

Mammouth du PHP | 1029 Messages

07 févr. 2007, 12:59

<option value="toutes"><?php echo $row_rs_ville['ville_etab']?></option> 
et puis dans le code qui sélectionne suivant la ville.

if($_POST['ville']=='toutes')
{
  //Code sql qui sélectionne toutes les villes 
}
else
{
 //Code qui sélectionne une ville avec une autre valeur que 'toutes'
}

Quelque chose du genre
L'expérience est la somme de toutes nos erreurs.

Eléphant du PHP | 186 Messages

07 févr. 2007, 13:32

C'était bien un truc du genre. Ca fonctionne parfaitement. Juste un petit changement dans le option value:
<option value="toutes">Afficher tous les campings</option>
Et pour le code de condition complet, ca donne ca:
mysql_select_db($database_conn_develop, $conn_develop);
if ($_POST['ville']=='toutes') {
$query_rs_camping = "SELECT nom_etab, cp_etab, ville_etab, url_photo4, alt_photo1, date_ouverture, nb_etoile_camping, id_camping FROM tbl_etab, tbl_camping WHERE tbl_etab.etab_id=tbl_camping.id_etab";
} else {
if (isset($_POST['ville'])) {
$query_rs_camping = "SELECT nom_etab, cp_etab, ville_etab, url_photo4, alt_photo1, date_ouverture, nb_etoile_camping, id_camping FROM tbl_etab, tbl_camping WHERE tbl_etab.etab_id=tbl_camping.id_etab AND ville_etab='".$_POST['ville']."'";
} else {
$query_rs_camping = "SELECT nom_etab, cp_etab, ville_etab, url_photo4, alt_photo1, date_ouverture, nb_etoile_camping, id_camping FROM tbl_etab, tbl_camping WHERE tbl_etab.etab_id=tbl_camping.id_etab";
}
}
Voila, je le mets au cas où d'autres personnes chercheraient à faire la même chose que moi.
Merci beaucoup Maitrepylos d'avoir passer du temps a essayer de résoudre mon problème.
Sans avoir l'air d'abuser, tu as du voir que sur l'image que j'ai envoyé que je souhaitais aussi faire un filtre par "étoile".
Est-il possible de cumuler les deux filtres, cad qu'une fois avoir selectionné une ville on puisse sur cette ville filter ensuite par étoile et n'avoir, au final, que les campings 3 étoiles par exemple dans telle ville??
Même si tu ne répond pas, je vais mettre le post comme étant résolu et reposté sur la possibilité de deux filtres à la suite mais que si je ne vois pas de solutions possibles.
Je souhaite quand même avoir ton avis sur la question.
Merci encore.

Mammouth du PHP | 1029 Messages

07 févr. 2007, 14:32

Tu dois rester dans le même principe de if else

je vois quelque chose comme ça
if ($_POST['ville']=='toutes') {
 //filtre pour ville = toutes
} 
else 
{
    if (isset($_POST['ville']) && $_POST['etoile']) 
    {
         //code avec WHERE ville = $_POST['ville'] AND etoile = $_POST['etoile']
    }
    elseif(isset($_POST['ville']))
    {
        //premier filtre
    }
    else 
    {
       //filtre général 
    }
}

Content d'avoir pu t'aider :)
L'expérience est la somme de toutes nos erreurs.