IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

[PHP/MySql] requete complexe


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 116
    Points : 78
    Points
    78
    Par défaut [PHP/MySql] requete complexe
    bonjour

    voila je suis en stage et j'ai un tres gros probleme
    j'ai une page avec deux listes deroulantes un bouton et un affichage des produits en bas non classée lors du chargement de la page. si je choisi une categorie (dans la premiere liste deroulante) et que j appuie sur le bouton il m affiche tout les enregistrement dont la categorie est celle selectionnee puis si je selectionne une sous categorie (deuxieme liste deroulante) et que j appuie sur le bouton il m'affiche tous les produits dont la ss categorie correspond a celle selectionner.
    je sais qu'il faut ecrire plusieur requete mais je bloque dans la condition d'affichage des requetes

    merci pour vos futur aides

  2. #2
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    peux-tu détailler le schéma de ta base, pour qu'on puisse essayer de t'aider ...

    si j'ai bien compris le problème, j'utiliserais une seule requete, construite de manière dynamique : une requete de base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'SELECT * FROM table'
    à laquelle, tu concatènes de manière conditionnée les restrictions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (isset($_GET['liste1'])) {$sql .= ' WHERE categorie='.$_GET['liste1'];
      if (isset($_GET['liste2'])) {$sql .= ' AND souscategorie='.$_GET['liste2'];}
    } else if (isset($_GET['liste2'])) {$sql .= ' WHERE souscategorie='.$_GET['liste2'];}
    Je ne sais pas si celà répond à ta question, ...

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    En reprenant ce qui est donné plus haut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'SELECT * FROM table'.(isset($_GET['liste1'])?' WHERE categorie='.$_GET['liste1']:'').((isset($_GET['liste1']) and isset($_GET['liste2']))?' AND souscategorie='.$_GET['liste2']:'');
    Mettre juste la sous catégorie dans le where n'a aucun intérêt vu qu'il faut au moins avoir une catégorie de sélectionner

  4. #4
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    ne connaissant pas l'ensemble des spécifs, j'ai préféré faire du générique (non sécurisé, vue que non résistant aux SQL injections) qui puisse fonctionner dans tous les cas ...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 116
    Points : 78
    Points
    78
    Par défaut
    merci beaucoup pour votre aide mais j'ai resolu le probleme je pense que j'avais trop travaille se jour la et que je n'arrivais pas a reflechir

  6. #6
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    ajoute résolu alors et montre ta requête

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] PHP MySql - Requete complexe
    Par tideqc dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 25/10/2012, 01h53
  2. [MySQL] php/mysql requete s'executant deux fois
    Par soohikei dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/05/2010, 11h58
  3. Mysql : requete complexe ou multitude de requete ?
    Par serge1973 dans le forum Requêtes
    Réponses: 5
    Dernier message: 26/11/2007, 13h02
  4. [php-mysql] Requete gros traitements
    Par antrax2013 dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/08/2006, 12h32
  5. requete php mysql
    Par calitom dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/02/2006, 16h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo