|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
Bonjour,
Je suis nouvelle sur ce forum..alors un peu d'indulgence!!! Merci par avance pour vos réponses. Je développe en php.Voici mon problème : J'ai une page qui contient deux champs dates alimenter par deux datepicker et une liste déroulante avec des données....datepicker et liste ok!!! Le souci, c'est quand je sélection les deux dates exemple "du 01/09/2011 à 08/09/2011" et je fais mon choix dans la liste exemple "cartouches",cela me renvoye toutes les dates correspondantes à "cartouches" alors que cela devrait me renvoyer les dates correspondant aux choix de mes dates..j'espère que je me suis bien expliqué.. Je mets mon code : Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
|
Membre confirmé
![]() Dominique Première S Inscription : juillet 2010 Messages : 252 ![]() |
il faut simplement débugger le code en écrivant :
Code :
quand tu doutes du contenu d'une variable, c'est toujours ce qu'il faut faire pour s'assurer de ce qui est sûr ou non, et ainsi isoler le problème. bon courage. |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
Merci Dominique49;
Je l'ai déjà fait et retourne rien ,j'ai fait un var_dump qui me retourne ceci array 'service' => string ' Archives' (length=9) 'DATE_SORTIE' => string '01/09/2011' (length=10) 'DATE_SORTIE1' => string '08/09/2011' (length=10) Donc il y a bien un problème dans la déclaration de mes variables ..cela fait quelques jours que je suis dessus et je ne trouve pas la solution si l'on pouvait m'aider à trouver la solution cela serait super... |
|
|
00
|
|
|
#4 |
![]() ![]() |
En SQL les dates sont au format suivant : 'aaaa-mm'jj'.
Il faut donc commencer par convertir du format 'jj/mm/aaaa' au bon format. Cela peut être fait en MySQL avec la fonction STR_TO_DATE : Code :
BETWEEN STR_TO_DATE('".$date_debut."', '%d/%m/%Y') AND STR_TO_DATE('".$date_fin."', '%d/%m/%Y')
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#5 | ||||
|
Membre confirmé
![]() Dominique Première S Inscription : juillet 2010 Messages : 252 ![]() |
c'est la base des base, comment espère tu que des données t'arrive par $_POST['date_debut'] si dans ton formulaire tu donne le nom de 'date_sortie1' et 'date_sortie2' !
en plus, le var_dump t'a montrer que la variable $_POST['date_debut'] n'existait pas ... le formulaire corrigé : Code :
Code :
cordialement. |
||||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
J'avais fait le changement déjà par rapport au name comme tu l'as cité...je viens de faire le else et l'echo..mais toujours le même résultat..
|
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() Dominique Première S Inscription : juillet 2010 Messages : 252 ![]() |
Le var_dump donne quoi ?
cordialement. |
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
voici le résultat : array
'service' => string ' Archives' (length=9) 'date_debut' => string '01/09/2011' (length=10) 'date_fin' => string '08/09/2011' (length=10) je te communique tout le code de ma page voir si cela ne peut venir d'autre chose : Code :
|
||
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Développeur informatique Inscription : avril 2011 Messages : 196 ![]() |
Tes dates sont toujours au format 'jj-mm-aaaa' en alors que le format date de SQL est le suivant : 'aaaa-mm-jj'.
|
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
j'ai des résultats d'erreurs enfin voilà ce que cela donne avec le script que je t'ai fournit...
dans ma liste déroulante : choose onusienne de la fonction Entre:NaN/NaN/NaN Et:NaN/NaN/NaN array vide Quelle merdouille. |
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
j'ai testé avec ce que tu m'avais transmi avec
BETWEEN STR_TO_DATE('".$date_debut."', '%d/%m/%Y') AND STR_TO_DATE('".$date_fin."', '%d/%m/%Y') et ce'st la même erreur |
|
|
00
|
|
|
#12 | ||
|
Membre confirmé
![]() Dominique Première S Inscription : juillet 2010 Messages : 252 ![]() |
je ne suis pas un expert pour le formatage des dates, mais il me semble que le format spécifié dans ton code est yyyy/mm/dd au lieu de yyyy-mm-dd
essaye avec ceci, bien que je ne te promet rien ![]() Code :
|
||
|
|
00
|
|
|
#13 | ||
|
Membre confirmé
![]() Développeur informatique Inscription : avril 2011 Messages : 196 ![]() |
Sinon convertit tes dates avant de les passer a SQL
Code :
|
||
|
|
00
|
|
|
#14 | ||
|
Candidat au titre de Membre du Club
![]() Développeur Web Inscription : juin 2009 Messages : 11 ![]() |
Code :
Code :
" BETWEEN '$date_debut' AND '$date_fin' "
|
||
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
pour fab256 j'ai une erreur et pour Begamy toutes les lignes s'affichent mais pas la plage de dates que j'ai choisi donc retour 4 lignes et non 3
|
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
et j'ai oublié de préciser que mon echo'<span style="color:red;">quelle merdouille.<br /><br/></span>'; s'affiche en plus de mes lignes....
|
|
|
00
|
|
|
#17 |
|
Membre confirmé
![]() Développeur informatique Inscription : avril 2011 Messages : 196 ![]() |
Désolé j'ai oublié le strtotime dans mon code
|
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
c'est à dire..c'est tout nouveau pour moi les dates...
|
|
|
00
|
|
|
#19 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
le problème ne vient pas des dates car cela me récupère toutes les lignes et pas la plage sélectionnée de dates donc quand je fais rechercher le between ne fonctionne pas pourtant ma requête testée dans mysql marche...
|
|
|
00
|
|
|
#20 | ||
|
Invité de passage
![]() Inscription : août 2009 Messages : 54 ![]() |
bonjour..
J'ai repris tout mon code(lignes par lignes et indenté comme il faut) première erreur je fais une requête au niveau de mes champs dates qui n'est pas du tout utile.. puisque ce ne sont que des champs dates..ensuite j'ai reporté en la modifiant sur la fin de mon code au moment de l'affichage et je comprends mieux pourquoi j'avais toutes les lignes car comme j'avais codé il ne fesait que la recherche sur ma liste déroulante...donc evidemment que mes champs dates n'étaient pas pris en compte..donc maintenant je repart sur quelque chose de plus propre.Donc résultat de tout ceci c'est que quand j'active le bouton rechercher ,il recherche mais plus rien en affcichage.. voici le code : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com