Bonjour,
j'ai besoin de sélection toutes les periodes qui ont une péeriode en commun avec la période suivante :
date_deb et date_fin
Sachant que les dates saisies par l'internautes dont :
date1 pour la date de début et
date2 pour la date de fin
voilà ce que donne ma requête :
Mon souci c'est que ça ne fonctionne pas. Ca me sélectionne des périodes qui ne devrait pas être séléctionnées...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $sqla = sprintf("SELECT A.id_adh, A.id_vil, B.id_vil, B.id_pay, B.ville_fr, C.id_pay, C.id_con, C.pays_fr, D.cont_fr FROM flatforswap_adherent A INNER JOIN flatforswap_ville B ON A.id_vil = B.id_vil INNER JOIN flatforswap_pays C ON B.id_pay = C.id_pay INNER JOIN flatforswap_continent D ON D.id_con = C.id_con INNER JOIN flatforswap_destination E WHERE (E.date_deb <= '".$date1."' and E.date_fin >= '".$date2."') OR (E.date_deb >= '".$date1."' and E.date_fin >= '".$date2."') OR (E.date_deb <= '".$date1."' and E.date_fin <= '".$date2."') OR (E.date_deb >= '".$date1."' and E.date_fin <= '".$date2."') limit $start, $epp");}
Une chose important, Le format des dates est le suivant :
année-mois-jour soit par exemple
2010-06-01
Le problème vient peut-être du format. Qu'en pensez-vous ?
Partager