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 :

[SQL] interroger le resultat d'une requete


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut [SQL] interroger le resultat d'une requete
    Bonjour @ tous,
    Je fais une requete classique du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $requete="Select ID_img Where categorie =$cat";
    Je fais cette requete en fonction grace a une url du type :

    mapage.php?cat=2&ID_img=56

    Ce que je voudrais, c'est pouvoir identifier dans ma requete quel est l'ID_img précédent 56 (passé aussi dans l'url) et aussi celui que j'aurai après.

    Voila, j'espère avoir été clair.

    D'avance merci

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Quel est le critère qui permet d'établir une relation d'ordre entre deux catégories ?

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut
    euh.... qu'est ce que tu entendes pas "relation d'ordre enter deux categorie" ?

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 229
    Points : 91
    Points
    91
    Par défaut
    Et en récupérant la variable dans l'URL ??? Ca ne serait pas plus simple ?

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut
    Si si je récuprère ma variable d'url avec $cat = $_GET['cat']

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut
    Pour essayer d'être plus clair, je vais essayer de simplifier ma demande :

    Ma requete me donne les resultat suivants :

    (2,5,10,45,47,48,51,53,56,60,80,98)

    Mon url me donne l'ID 56.
    Je voudrais pouvoir récupérer les ID 53 et 60.

    Merci

  7. #7
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par jexl
    euh.... qu'est ce que tu entendes pas "relation d'ordre enter deux categorie" ?
    Soit A et B deux catégories. Quel critère te permet de dire que A est "avant" ou "apres" B ?

    EDIT: grilled, j'ai apparemment ma réponse

  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut
    ah pardon.
    Tout simplement l'ordre croissant des entiers, puisque ma requete me donne un resultat avec ID_img (qui est un entier) de manière croissante.

    S'cuse

  9. #9
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Attention, il n'y a pas d'ordre dans une table sql. Selon la norme, rien ne garanti que tu obtienne toujours même ordre entre deux select. (il faut voir alors ta table comme un sac de billes) Par contre si tu veux être sur il faut trier par id par exempble (ORDER BY id)

    Donc pour la categorie avant :
    Il faut récupérer l'id le plus grand parmis ceux strictement inférieurs à id

    Et pour la categorie apres
    Il faut récupérer l'id le plus petit parmis ceux strictement supérieurs à id


  10. #10
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Ce qui donne, sous mysql, à mon humble avis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT id
    FROM ma_table
    WHERE id < 56
    ORDER BY id DESC
    LIMIT 1
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT id
    FROM ma_table
    WHERE id > 56
    ORDER BY id ASC
    LIMIT 1
    A testé avant sous PHPMyadmin...

  11. #11
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 213
    Points : 104
    Points
    104
    Par défaut
    Génial merci.

    Mr N>Je l'avais pas noté dans ma requete, mais c'est bien comme ca que je trie ma requete, avec ORDER BY.

    En fait je pensais pouvoir traiter ce résultat en php. j'aurais du penser a faire plus simple en sql.

    Merci @ vous

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

Discussions similaires

  1. [SQL] Concatenation des resultat d'une requete SQL
    Par zian974 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/09/2006, 13h11
  2. Réponses: 6
    Dernier message: 31/07/2006, 10h18
  3. modifier les resultats d'une requete SQL
    Par billyboy dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 30/05/2006, 06h22
  4. [Oracle / Sql] clause where avec resultat d'une requete
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 2
    Dernier message: 31/01/2006, 09h37
  5. Réponses: 1
    Dernier message: 25/10/2005, 12h18

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