Php: si imbriqué... un casse-tête !
Résolu
Fetide68
Messages postés
816
Statut
Membre
-
Fetide68 Messages postés 816 Statut Membre -
Fetide68 Messages postés 816 Statut Membre -
Bonjour,
Je m'entraîne sur l'Ajax, mais j'en arrive à faire des requêtes complexes (sans sql) pour lesquels j'ai du mal à trouver le raisonnement.
Nous avons un site et plus précisément un formulaire qui permet de trouver des informations sur des voitures d'occasion, par exemple...
L'utilisateur va vouloir filtrer ses recherches en recherchant par marque, par carburant, par date, par prix et par kilométrage...
Je rappelle que je n'ai pas recours à sql...
Comment je peux faire pour afficher un résultat en fonction des informations saisies ou non par le visiteur ?
Exemple:
Il existe une façon de simplifier tout ça ???
J'ai essayer en développant et présentant toutes les configurations possibles, mais ça ne marche pas...
Merci d'avance
Je m'entraîne sur l'Ajax, mais j'en arrive à faire des requêtes complexes (sans sql) pour lesquels j'ai du mal à trouver le raisonnement.
Nous avons un site et plus précisément un formulaire qui permet de trouver des informations sur des voitures d'occasion, par exemple...
L'utilisateur va vouloir filtrer ses recherches en recherchant par marque, par carburant, par date, par prix et par kilométrage...
Je rappelle que je n'ai pas recours à sql...
Comment je peux faire pour afficher un résultat en fonction des informations saisies ou non par le visiteur ?
Exemple:
if ($marque != "") alors fais ça, mais if($prix != "") alors il faut aussi faire ça...
Il existe une façon de simplifier tout ça ???
J'ai essayer en développant et présentant toutes les configurations possibles, mais ça ne marche pas...
Merci d'avance
A voir également:
- Php: si imbriqué... un casse-tête !
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour à la ligne php ✓ - Forum PHP
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
Salut !
Ben il suffit de faire, comme le dit le titre, des if imbriques :
<code>If () {
// code
if () {
// autre code
}
}
<code>
Ben il suffit de faire, comme le dit le titre, des if imbriques :
<code>If () {
// code
if () {
// autre code
}
}
<code>
Oui enfin Ajax veut dire XML aussi, et ton xml c'est une métadonnée donc il faut que ailles la chercher sur une base dans ton cas... ou alors tu as un gros fichier texte avec plein d'informations et tu as une base de données sans le savoir et surtout sans ses avantages comme le sqL...
Bref après si c'est de l'algorithmique quel est le soucis? Le si imbriqué seront lourds mais si le but est d'avoir des critères complexes effectivement les critères conditionnels ne seront pas simple. Sinon il existe d'uatres structures que le
si, sinon et alors. Connait tu le switch qui utilises une liste?
Pour simplifier il est certainement possible de hiérarchiser les critères de recherches?
Bref après si c'est de l'algorithmique quel est le soucis? Le si imbriqué seront lourds mais si le but est d'avoir des critères complexes effectivement les critères conditionnels ne seront pas simple. Sinon il existe d'uatres structures que le
si, sinon et alors. Connait tu le switch qui utilises une liste?
Pour simplifier il est certainement possible de hiérarchiser les critères de recherches?
si ($_GET['marque']==$marque && $_GET['prix']<=$prix && $_GET['carburant']==$carburant) { faire ça... } si ($_GET['marque']==$marque && $_GET['prix']<=$prix ) { faire ça... } si ($_GET['marque']==$marque && $_GET['carburant']==$carburant) { faire ça... } si ($_GET['prix']<=$prix && $_GET['carburant']==$carburant) { faire ça... } si ($_GET['prix']<=$prix) { faire ça... } si ($_GET['carburant']==$carburant) { faire ça... } si ($_GET['marque']==$marque) { faire ça... }Bref, comme ça mais le croisement ne marche pas...
<?Php if ($_GET['marque']==$marque && $_GET['prix']<=$prix && $_GET['carburant']==$carburant) { //faire ça... } elseif ($_GET['marque']==$marque && $_GET['prix']<=$prix ) { //faire ça... } elseif ($_GET['marque']==$marque && $_GET['carburant']==$carburant) { //faire ça... } elseif ($_GET['prix']<=$prix && $_GET['carburant']==$carburant) { //faire ça... } elseif ($_GET['prix']<=$prix) { //faire ça... } elseif ($_GET['carburant']==$carburant) { //faire ça... } elseif ($_GET['marque']==$marque) { //faire ça... } ?>Et si tu fais un switch() sans utiliser de "break", ça marche pas ?
C'est pour entraîner la logique et ma compréhension du php...