Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/03/2007, 16h05   #1
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 57
Points : 12
Points : 12
Par défaut [Conception] recherche via plusieurs listes déroulantes

Bonjour,

Je voudrais savoir si vous aviez un site ou une aide qui explique bien le fonctionnement pour rechercher via plusieurs listes déroulantes ?

Mon objectif est de faire 2 listes déroulantes :

1ère
marque voiture :
1) aucune ( vide )
2) toyota
3) Fiat
4) Alpha
5) ect...

2ème :
couleur :
1) aucune ( vide )
2) blanc
3) rouge
4) ect...

Biensur quand je met aucun ca veut dire qu'il recherche juste en fonction de l'autre liste déroulante.

Après avoir choisi, je clique sur un bouton et la recherche ce lance sur les 2 listes déroulantes donc

Merci d'avance et agréable journée !

Chicho


ps : j'oubliais, mais les données sont déjà en base de donnée et je sais comment faire la liste déroulante, c'est juste le fait de rechercher que j'ai beaucoup de peine.
chicho est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/03/2007, 16h17   #2
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
je suppose que tu récupères déjà tes données dans ta page de traitement.

Il faut que tu initialises une requête comme ça :
Code :
$requete = "SELECT champs FROM table WHERE 1=1";
Ensuite en fonction de ce que tu as récupéré si tu as une marque de voiture tu complètes ta requête avec
Code :
$requete .= " AND id_marque = " . $_POST['id_marque'];
Idem avec l'autre liste.
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/03/2007, 16h25   #3
Membre à l'essai
 
Inscription : novembre 2005
Messages : 26
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 26
Points : 21
Points : 21
donc supposons que tes listes soit former de cette façon:
Code HTML :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<select name="marque">
	<option value="0">aucune</option>
	<option value="1">toyota</option>
	<option value="2">Fiat</option>
	<option value="3">Alpha</option>
</select>
 
<select name="couleur">
	<option value="0">aucune</option>
	<option value="1">blanc</option>
	<option value="2">bleu</option>
	<option value="3">rouge</option>
</select>

le requète pourrait être générer comme ça :
Code :
1
2
3
4
5
6
7
8
9
10
 
$str = "select * from VOITURE where nbdispo > 0"
if ($_POST['marque']!="0")
{
        $str =$str."And marque=".$_POST['marque'];
}
if ($_POST['couleur']!="0")
{
        $str += $str."And couleur=".$_POST['couleur'];
}
c'est peut-être pas le mieux mais ça peut te donner une piste
azraelster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 15h24   #4
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 57
Points : 12
Points : 12
merci bien de vos réponses qui vont surement m'aider beaucoup !
Mais je me demandais, ou ce passe l'appelle. Car moi au fait je veux avoir mes 2 listes déroulantes et une fois le choix fait dans les 2, je clique sur un bouton "rechercher" et je dois être rediriger sur la page qui affichera le résultat

Donc je me disais ou je met ce bouton "rechercher" ( dans le code ) si je peux me permettre, car mon soucis majeur était la transition entre les listes déroulantes et la recherche faites à partir du choix
chicho est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 16h57   #5
Membre à l'essai
 
Inscription : novembre 2005
Messages : 26
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 26
Points : 21
Points : 21
Code HTML :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<FORM METHOD="POST" ACTION="./recherche.php">
<select name="marque">
	<option value="0">aucune</option>
	<option value="1">toyota</option>
	<option value="2">Fiat</option>
	<option value="3">Alpha</option>
</select>
 
<select name="couleur">
	<option value="0">aucune</option>
	<option value="1">blanc</option>
	<option value="2">bleu</option>
	<option value="3">rouge</option>
</select>
<INPUT type="submit" value="Rechercher">
</FORM>

donc quelque expliquation si tu les veux ^^

Code HTML :
<FORM METHOD="POST" ACTION="./recherche.php">

c'est la balise d'ouverture de ton formulaire, il utilise la méthode POST pour envoyer les donner à la pages rechercher.php (le ./ est pour dire que c'est dans le même dossier que la page d'envoye).

ensuite
Code HTML :
<INPUT type="submit" value="Rechercher">

t'afficher un bouton Rerchercher qui fera l'envoye des données à la page recherche.php
azraelster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 17h56   #6
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 57
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 57
Points : 12
Points : 12
explication très correcte !! Je pense que ca devrait être bon ! je vous remercie et je passerais pour dire si mon soucis est résolu

chicho est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h04.


 
 
 
 
Partenaires

Hébergement Web