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 :

[mysql]Affichage de résultats selon le mois choisi [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut [mysql]Affichage de résultats selon le mois choisi
    Bonjour,

    je me prends la tête pour trouver LA requête qui fonctionne avec tous mes cas.
    Les utilisateurs ont une liste sous la forme Février 2011/Mars 2011/Avril 2011... afin d'afficher les manifestations qui ont lieu pendant ce mois, et qui ne sont pas encore passées.
    Mes manifestations sont enregistrées avec une date de début et une date de fin (qui peuvent être identiques si la manifestation ne dure qu'une journée).
    Par exemple, je dois afficher :
    - A qui a lieu le 15/02/11 (heureusement la majorité des cas ne dure qu'une journée)
    - B qui a lieu entre le 01/01/11 et le 17/02/11
    - C qui a lieu entre le 02/02/11 et le 23/02/11
    - D qui a lieu entre le 18/02/11 et le 25/02/11
    - E qui a lieu entre le 01/01/11 et le 15/03/11
    ...

    j'ai essayé plusieurs choses, sans succès total

    une idée ?

    merci d'avance !

  2. #2
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 236
    Par défaut
    EDIT : J'étais partis sur l'affichage, désolé.
    La réponse fournie par stealth35 est la plus propre à mon goût.

  3. #3
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2006
    Messages : 507
    Par défaut
    Soit $mois_debut le premier jour du mois choisis et $mois_fin le dernier jour du même mois.
    Soit une table event qui contient les champs id, date_debut, date_fin.
    Alors ta requête sera du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT id FROM event WHERE date_debut <= '$mois_fin' AND date_fin >= '$mois_debut'";

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920

  5. #5
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut
    Citation Envoyé par Fabllot Voir le message
    Soit $mois_debut le premier jour du mois choisis et $mois_fin le dernier jour du même mois.
    Soit une table event qui contient les champs id, date_debut, date_fin.
    Alors ta requête sera du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT id FROM event WHERE date_debut <= '$mois_fin' AND date_fin >= '$mois_debut'";
    Avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM agendav3 WHERE publish_up <= "2011-02-01" AND publish_down >= "2011-02-28"
    ça ne va pas vraiment, il manque pas mal de résultats.

    J'ai bien essayé avec year et month, mais je patauge dans mes essais fantaisistes...

  6. #6
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2006
    Messages : 507
    Par défaut
    Citation Envoyé par badseyar Voir le message
    Avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM agendav3 WHERE publish_up <= "2011-02-01" AND publish_down >= "2011-02-28"
    ça ne va pas vraiment, il manque pas mal de résultats.

    J'ai bien essayé avec year et month, mais je patauge dans mes essais fantaisistes...
    Certes, ce n'est pas ce que j'ai écrit !

    Si je comprends ton code, essais plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM agendav3 WHERE publish_up >= "2011-02-01" AND publish_down <= "2011-02-28"

  7. #7
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut
    Bonjour Fabllot,

    de cette manière, je n'ai que les manifestations dont les dates de début et de fin sont comprises dans le mois.

  8. #8
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2006
    Messages : 507
    Par défaut
    Citation Envoyé par badseyar Voir le message
    Bonjour Fabllot,

    de cette manière, je n'ai que les manifestations dont les dates de début et de fin sont comprises dans le mois.
    Je suis surpris... Les comparaisons sont dans le bon sens ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    publish_up >= "2011-02-01" AND publish_down <= "2011-02-28"
    Sinon qu'est-ce qu'exactement les champs publish_up et publish_down ?
    Je surpris car j'utilise cette recette sur mes sites et ça marche très bien !

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

Discussions similaires

  1. MySQL : Affichage du résultat d'une requête dans un tableau
    Par mathieu dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 7
    Dernier message: 22/09/2017, 16h51
  2. Affichage de résultats selon checkbox
    Par Meloooo dans le forum jQuery
    Réponses: 2
    Dernier message: 22/02/2011, 19h06
  3. [DATE] Afficher résultat selon le mois selectionner
    Par mickado dans le forum Langage SQL
    Réponses: 4
    Dernier message: 20/07/2007, 17h47
  4. [Dates] affichage différent selon le mois en cours
    Par itri2005 dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2006, 17h05
  5. [Dates] affichafe d'evenements selon le mois choisi
    Par Pepito dans le forum Langage
    Réponses: 3
    Dernier message: 07/03/2006, 02h47

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