Champs date + liste déroulante php
Résolu
fauve1512
Messages postés
206
Date d'inscription
Statut
Membre
Dernière intervention
-
fauve1512 Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
fauve1512 Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans ma page j'ai deux calender qui me permet dans les champs d'afficher deux date ex : entre :12/08/2010 et 08/09/2011 et une liste déroulante qui m'affiche les lignes selon mon choix(la liste fonctionne) maintenant je voudrais selon les choix des dates et le choix de la liste pouvoir afficher les lignes correspondantes ,je ne sais pas comment m'y prendre voici mon code :
Quelqu'un a-t-il la réponse de la manière de s'y prendre ??? Merci
Dans ma page j'ai deux calender qui me permet dans les champs d'afficher deux date ex : entre :12/08/2010 et 08/09/2011 et une liste déroulante qui m'affiche les lignes selon mon choix(la liste fonctionne) maintenant je voudrais selon les choix des dates et le choix de la liste pouvoir afficher les lignes correspondantes ,je ne sais pas comment m'y prendre voici mon code :
<td height="35" colspan="5" align="center" style="font-size:24px" >Statistiques de consommation <tr> <form id="service2" name="service2" method="POST" action="index.php?idpage=3"> <td height="30" colspan="5" align="center"><label>Entre : </label> <input type="text" id="datepicker" name="DATE_SORTIE" value="<?php echo date('d/m/Y'); ?>" /> <label>Et : </label> <input type="text" id="datepicker1" name="DATE_SORTIE" value="<?php echo date('d/m/Y'); ?>" /> <label></label></td> </form> </tr> <tr> <td height="32" colspan="5" align="left"> <form name="service" method="post" action="index.php?idpage=3"> <select name="service" onchange="submit"> <option selected> Choisissez un service</option> <?php $requete = "SELECT distinct service FROM servcart order by service"; $req = mysql_query($requete) or die( mysql_error() ) ; while ($donnees=mysql_fetch_array($req)) { $service = $donnees['service']; ?> <!-- affichage de la liste déroulante --> <option value="<?php echo $service ?>" <?php if ($service == $v_service) { echo 'Selected' ; } ?> ><?php echo $service?></option> <?php } ?> </select> <input type="submit" value="Rechercher" /> </form>
Quelqu'un a-t-il la réponse de la manière de s'y prendre ??? Merci
A voir également:
- Champs date + liste déroulante php
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste code ascii - Guide
- Site dangereux liste - Guide
145 réponses
dans bdd en US... et pour print_r() je ne connaissais pas donc j'ai fais ceci (je ne sais pas si c'est juste ??
Undefined index: date_debut dans C: \ Program Files \ wamp \ www \ gestioncart \ php \ statistiques.php sur la ligne 20
Notice: Undefined index: date_fin in C:\Program Files\wamp\www\gestioncart\php\statistiques.php on line 21
en plus des erreurs j'ai ma requête d'afficher ainsi
SELECT date_sortie FROM servcart WHERE date_sortie BETWEEN '' and '' et mon tableau avec les lignes
print_r($requete = "SELECT date_sortie FROM servcart WHERE date_sortie BETWEEN '$date_debut' and '$date_fin'");et j'ai des erreurs
Undefined index: date_debut dans C: \ Program Files \ wamp \ www \ gestioncart \ php \ statistiques.php sur la ligne 20
Notice: Undefined index: date_fin in C:\Program Files\wamp\www\gestioncart\php\statistiques.php on line 21
en plus des erreurs j'ai ma requête d'afficher ainsi
SELECT date_sortie FROM servcart WHERE date_sortie BETWEEN '' and '' et mon tableau avec les lignes
non print_r() c au début du script et non au début de la requête je voulais dire (mes excuses).
<?php
print_r();
le code php
?>
c'est juste pour afficher les valeurs envoyées.
<?php
print_r();
le code php
?>
c'est juste pour afficher les valeurs envoyées.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pas de soucis...dans print_r(); je rentre quoi comme paramètre car sans paramètre cela me fait une erreur
Warning: print_r() expects at least 1 parameter, 0 given in C:\Program Files\wamp\www\gestioncart\php\statistiques.php on line 16
à l'ouverture de ma page
Warning: print_r() expects at least 1 parameter, 0 given in C:\Program Files\wamp\www\gestioncart\php\statistiques.php on line 16
à l'ouverture de ma page
lol..
donc à l'ouverture de la page ,j'ai ceci à côté des champs dates :Array ( )
je clique sur le 1ier champs et voilà ce qu'il y a: NaN/NaN/NaN et le 2ième champs idem
donc à l'ouverture de la page ,j'ai ceci à côté des champs dates :Array ( )
je clique sur le 1ier champs et voilà ce qu'il y a: NaN/NaN/NaN et le 2ième champs idem
les dates ne sont pas bien transmises.petit test,est-il possible que tu entres les dates à la main?si oui,essaye de les entrer mais au format US et lance la recherche.
ok,vraiment bizarre tout.bien j'ai vu dans ton formulaire où tu mets ceci
name="DATE_SORTIE"au niveau du nom que tu donne à tes input,essai de mettre en minuscule (je ne pense pas que ça soit la bas,mais bon..) et teste en mettant toujours la date à la main et au format US.
voilà j'ai fait un changement sur les input name que j'ai nommé pareil que mes variables ce qui donne ceci :
mes variables et traitement :
et quand j'ouvre ma page ime met en direct l'echo MERDOUILLE..donc une petite avancée mais cela ne suffit pas...grrrrrrrrrrrrrr
<label>Entre : </label> <input type="text" id="datepicker" name="date_debut" value=""/> <label>Et : </label> <input type="text" id="datepicker1" name="date_fin" value=""/> <label></label>
mes variables et traitement :
<?php var_dump($_POST); if (isset($_POST['date_debut']) and isset($_POST['date_fin'])) { $date_debut=$_POST['date_debut']; $date_fin=$_POST['date_fin']; $requete3 = "SELECT DATE_FORMAT(date_sortie,'%d/%m/%Y') AS DateTemps FROM servcart WHERE date_sortie BETWEEN '$date_debut' AND '$date_fin' and uf='uf'"; $req3 = mysql_query($requete3) or die( mysql_error() ) ; } else{ echo'<span style="color:red;">quelle merdouille.<br /><br/></span>'; } ?>
et quand j'ouvre ma page ime met en direct l'echo MERDOUILLE..donc une petite avancée mais cela ne suffit pas...grrrrrrrrrrrrrr
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 text..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 affichage.. voici le code :
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 text..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 affichage.. voici le code :
<?php //gestion de la ligne selectionnée if (isset($_POST['uf'])) {$uf=$_POST['uf']; } else {$uf="";} if (isset($_POST['service'])) {$v_service=$_POST['service']; } else {$v_service="";} ?> <table width="580" height="209" border="3"> <form name="rechercher" method="post" action="index.php?idpage=3"> <tr> <td height="35" colspan="5" align="center" style="font-size:24px" >Statistiques de consommation </td> </tr> <tr> <td height="32" colspan="5" align="left"> <select name="service" > <option selected> Choisissez un service</option> <?php $requete = "SELECT distinct service FROM servcart order by service"; $req = mysql_query($requete) or die( mysql_error() ) ; while ($donnees=mysql_fetch_array($req)) { $service = $donnees['service']; ?> <!-- affichage de la liste déroulante --> <option value="<?php echo $service ?>" <?php if ($service == $v_service) { echo 'Selected' ; } ?> ><?php echo $service?></option> <?php } ?> </select> </td> </tr> <tr> <td height="30" colspan="5" align="center"> <label>Entre : </label> <input type="text" id="datepicker" name="date_debut"/> <label>Et : </label> <input type="text" id="datepicker1" name="date_fin" /> </td> </tr> <tr> <th height="28" colspan="5" scope="row" align="center"> <input type="submit" value="Rechercher" /> </th> </tr> <tr> <th width="52" height="36" bgcolor="#5ab9d8" scope="col">UF</th> <th width="159" bgcolor="#5ab9d8" scope="col">SERVICE</th> <th width="191" bgcolor="#5ab9d8" scope="col">CARTOUCHE</th> <th width="77" bgcolor="#5ab9d8" scope="col">DATE</th> <th width="63" bgcolor="#5ab9d8" scope="col">SORTIE STOCK</th> </tr> <?php if (isset($_POST['date_debut']) and isset($_POST['date_fin'])) { $date_debut=$_POST['date_debut']; $date_fin=$_POST['date_fin']; $requete2 = "SELECT uf,service,cartouche,sortie_stock,date_sortie FROM servcart WHERE date_sortie BETWEEN '$date_debut' and '$date_fin' and uf='$uf' order by date_sortie "; $req2 = mysql_query($requete2) or die( mysql_error() ) ; while ($donnees2=mysql_fetch_array($req2)) { ?> <tr> <td height="22"><?php echo $donnees2['uf']; ?></td> <td><?php echo $donnees2['service']; ?></td> <td><?php echo $donnees2['cartouche']; ?></td> <td><?php echo $donnees2['date_sortie']; ?></td> <td><?php echo $donnees2['sortie_stock']; ?></td> </tr> <?php } } ?> </form> </table>
Bonjour!
sur phpmyadmin la requête fonctionne? autre chose,vérifie bien (j'insiste) le format de tes dates (dates envoyés vers la BDD et les dates présente dans la BDD) afin de comparer.
sur phpmyadmin la requête fonctionne? autre chose,vérifie bien (j'insiste) le format de tes dates (dates envoyés vers la BDD et les dates présente dans la BDD) afin de comparer.
ma requete fonctionne sur phpmyadmin voici le résultat :
id_service uf service sortie_stock cartouche date_sortie
222 4517 Archives 1 1720 2011-09-08
223 4517 Archives 10 343 Couleur 2011-09-07
225 4517 Archives 1 BCI 6 E 520 Cyan 2011-09-01
la date envoyée est en fr et dans ma bdd est en us, j'ai écris mes dates en us à la main dans mes champs et pas d'affichage
id_service uf service sortie_stock cartouche date_sortie
222 4517 Archives 1 1720 2011-09-08
223 4517 Archives 10 343 Couleur 2011-09-07
225 4517 Archives 1 BCI 6 E 520 Cyan 2011-09-01
la date envoyée est en fr et dans ma bdd est en us, j'ai écris mes dates en us à la main dans mes champs et pas d'affichage
J'ai mis ceci dans mon code:
mais pas de changement..
$to_date = explode("/", $date_debut); $date_debut = $to_date[2]."-".$to_date[1]."-".$to_date[0]; $to_date = explode("/", $date_fin); $date_fin = $to_date[2]."-".$to_date[1]."-".$to_date[0];
mais pas de changement..