|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() |
Bonjour à tous,
Je cherche à insérer dans une requête mysql une condition de date mais je ne sais pas comment la mettre en place. Je gère un agenda avec une date de début d'évènement au format 0000-00-00 et une date de fin d'évènement au même format. Sauf que certains évènements sont à une date unique et d'autre sur plusieurs jours. Je n'arrive pas à m'en sortir avec ma requête. Voici mon code : Code :
WHERE (SOIREE_SECTEUR = '$idSecteur' AND (WHEN SOIREE_DATE_FIN = '0000-00-00' THEN SOIREE_DATE LIKE '$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay' ELSE SOIREE_DATE <= '$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay' AND SOIREE_DATE_FIN >= '$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay') ) Merci par avance, Aurélien |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 823 ![]() |
Salut !
Quel est le problème ?
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() |
Salut Seb,
Merci de ta réponse. En fait je ne sais pas comment créer cette requête mysql. A l'heure actuelle je ne gère que des dates simples sans intervalle : Code :
WHERE (SOIREE_SECTEUR = '$idSecteur' AND SOIREE_DATE LIKE '$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay' ) Etant un codeur en herbe je ne sais pas comment coder ma requête mysql qui me permettrait d'afficher mon évènement aux autres dates. Je ne sais pas si je suis très clair dans mes explications Penses-tu pouvoir me filer un coup de main ? Merci à toi. Aurélien |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 823 ![]() |
Si j'ai bien compris tu veux sélectionner les évènement dont
$date correspond à DATE_SOIREE Ou $date est compris entre DATE_SOIREE et DATE_SOIREE_FIN J'ai bon ? Si oui alors tu peux faire : ... WHERE '$date' = DATE_SOIREE OR '$date' BETWEEN DATE_SOIREE AND DATE_SOIREE_FIN ...
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() |
Merci pour ta réponse.
C'est presque ça car il faut que je pose comme condition que quand SOIREE_DATE_FIN = 0000-00-00 il prenne en compte $date = SOIREE_DATE et que quand SOIREE_DATE_FIN correspond à une date autre que 0000-00-00 il prenne en compte $date BETWEEN SOIREE_DATE AND SOIREE_DATE_FIN C'est à ce stade là que je bloque. As-tu une idée ? Merci par avance, Aurélien |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 823 ![]() |
Hum je ne vois pas de problème car si DATE_SOIREE_FIN vaut 0000-00-00 le BETWEEN sera toujours FALSE.
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() |
Voici le code Code :
WHERE (SOIREE_SECTEUR = '$idSecteur' AND ('$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay' = SOIREE_DATE OR '$nbrTodayYear-$nbrTodayMonth-$nbrAgendaDay' BETWEEN SOIREE_DATE AND SOIREE_DATE_FIN) ) http://www.nightfever.fr/sorties_Cle...-mai-2011.html Il m'affiche des dates partants du 26 mai alors que la date sélectionnée est celle du 28 mai. |
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() |
Attends je fais une vérification, je crois que j'ai dit une bétise ...
|
|
|
00
|
|
|
#9 | |
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 823 ![]() |
Citation:
Cela répond bien au postulat de départ.
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
|
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() |
Merci Seb.
Il m'a fallu un peu de temps pour comprendre mon erreur mais tout fonctionne et c'est bien là le principal Encore merci. A bientôt, Aurélien |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com