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

PHP & Base de données Discussion :

Construction d'une requête


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 224
    Par défaut Construction d'une requête
    Bonjour

    J’utilise une fonction de lecture qui comporte ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $requete = "SELECT * FROM ".$table." WHERE type = '".$domaine."' AND page = '".$section."' ORDER BY nom";
    pour lequel j’initialise les valeurs des variables $domaine et $section.

    Je voudrais, pour une requête, sélecter tout ce qui se trouve dans cette table ; pour ça, je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $requete = "SELECT * FROM ".$table." WHERE type = '*' AND page = '*' ORDER BY nom";
    avec l’idée que l’astérisque désigne tout mais ça ne fonctionne pas ; j’ai aussi essayé cette requête dans PhpMyAdmin.

    Comment faire sans modifier mon code, autant que possible?

    Par avance merci de votre aide.

    Francois

  2. #2
    Membre émérite Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Par défaut
    La clause WHERE n'est pas obligatoire dans une requête.
    Si tu veux sélectionner toutes les lignes d'une table, il suffit de ne pas en mettre.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT listeDeColonnes FROM taTable ORDER BY uneColonne

  3. #3
    Membre émérite Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Par défaut
    Peut-être as-tu besoin de quelque chose comme ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $conditions = array();
    if (!empty($domaine)) $conditions[]="type = '$domaine'";
    if (!empty($section)) $conditions[]="page = '$section'";
     
    $WHERE_conditions = (count($conditions)==0) ? '': 'WHERE '.implode(' AND ',$conditions); 
     
    $requete = "SELECT * FROM $table $WHERE_conditions ORDER BY nom";
    qui permet de construire la requête sans savoir si le domaine et/ou la section sont définis.
    Fred

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 224
    Par défaut
    bonjour et merci de vos réponses.

    Oui, je sais qu'il suffit de ne pas en mettre mais, dans ce cas là j'utilise une fonction générale à laquelle je passe, ou ne passe pas maintenant, des paramètres pour Where; je préfère ne pas changer ma fonction générale.

    Aussi, je vais utiliser la solution conditionnelle de Micetf qui me paraît excellente.

    Merci encore.

    Francois

Discussions similaires

  1. Construction d'une requête un peu complexe
    Par dauphin34000 dans le forum SQL
    Réponses: 9
    Dernier message: 24/05/2007, 11h43
  2. [MySQL] Erreur lors de la construction d'une requête
    Par gaetan24 dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 06/04/2007, 15h45
  3. Réponses: 1
    Dernier message: 14/02/2007, 15h51
  4. [Conception] Construction d'une requête
    Par enidnalb dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/12/2006, 08h59
  5. Construction d'une requête imbriquée
    Par gudul dans le forum SQL
    Réponses: 20
    Dernier message: 03/07/2006, 10h57

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