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   -
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 :
<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:

145 réponses

fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
après avoir déclarer les variables necessaires il ne me reste plus que cette erreur
No database selected
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
salut!
ça veut dire que dans ton fichier de configuration,tu n'as pas spécifié la base de données.tu peux me montrer là où tu défini ta connecion à la BDD?
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
alors j'ai refais mon code en mettant form avant </table> à la fin de mon code pour inclure la deuxième partie
Forbidden

You don't have permission to access /gestioncart/="php/recherche.php" on this server.

Dis_moi normalement quand tu fais un autre fichier et que tu appel celui-ci c'est plutot un include qu'il faut et dans mon action je garde id_page car c'est sur la même page que doit apparaître ma recherche..???
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
ne met pas un include,essaye comme je t'ai dit dans mon message.pour le résultat de ta recherche,met le provisoirement sur une autre page.c'est juste pour tester si le code passe
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
Forbidden

You don't have permission to access /gestioncart/="php/recherche.php" on this server.

voici la réponse..
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
tu as mis la page recherche.php dans le même répertoire que la page où tu lance ta recherche?tu as changé l'action dans ton form en mettant recherche.php ?
Ce répertoire là,il m'inquiete,tu es sûre de l'avoir bien écrit?
/gestioncart/="php/recherche.php"
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
donc dans mon dossier :php ->statistiques.php qui est la fameuse page 3
php->recherche.php
C'est bien ce que tu m'as demandé..??
et dans action de la page 3, j'appelle cette page..c'est ce que j'ai fait..
Juste une précision avant que je n'ajoute les champs date à mon code, fonctionnait très bien.. la liste déroulante
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
il me semble peut etre qu'on ne se comprend pas.pas grave,on va aller doucement doucement.
la page statistique.php c'est ta page où tu as le formulaire avec tes deux datepicker et ta liste déroulante? si oui,ok alors dans l'action du form tu met recherche.php
exple: <form action="recherche.php" method="post">
ensuite,dans ta page recherche.php tu déclare toutes tes variables sans oublier la connexion à ta base de données et le script de recherche.
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,on c'est bien compris c'est ce que j'ai fait et j'ai comme erreur ceci :

You don't have permission to access /gestioncart/="recherche.php" on this server

Pour ma connexion à la base, j'ai ce fichier :

<!-- initialistaion de la connexion-->
	<?php 	
			//Paramètre de connexion  
			$host=	'localhost';
			$login=	'root';
			$pw = 	'';
			$bd =	'gestion_cartouche';
			
			//Connexion
			mysql_connect($host,$login,$pw) or die ('Probléme de connexion ');
			mysql_select_db($bd) or die ('probléme avec la base de données');
			
			
			//Précision au serveur le charset à utiliser
			mysql_query("SET NAMES 'utf8'") or trigger_error("Query Failed (UTF8): ".mysql_error());
	?>	


et pour la gestion des pages ,j'ai ce fichier ci :

<!-- Gestion des pages du site -->
	<?php 
				
		if (isset($_GET['idpage']))		   
		   {
			$idpage=$_GET['idpage']
		  ;}		
		else
		
		{$idpage='0';}
		
		$query="select * from web_page where idpage = '$idpage'";
		$result=mysql_query($query) or die("probleme dans la requete ".$query);
		
		$row=mysql_fetch_row($result);
		
		$idpage =$row[0];
		$titre  =$row[1];
		$corps  =$row[2];
				
	?>
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
je viens de m'apercevoir qu'il y avait un un double égal dans action...donc j'ai retesté et comme résultat une page blanche..!!!!!
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
bon j'avance..j'ai réussi à afficher le choix de ma liste déroulante mais cela ne tient pas compte de la plage de date..je m'explique si je fais entre : 01/09/2011 et : 08/09/2011 il me renvoye toutes les lignes et non entre ces deux dates...donc il ne récupère pas mon select par rapport à mes champs dates voici le code dates et listes déroulantes :
<form  name="envoyer" method="post" action="index.php?idpage=3">
	  <td height="26" colspan="5" align="center">  
		  <label>Entre :  </label>  
		  <input type="text" id="datepicker" name="DATE_SORTIE" onclick="DATE_SORTIE.value='DATE'"/>
		  <label> Et :</label>
		  <input type="text" id="datepicker1" name="DATE_SORTIE1"onclick="DATE_SORTIE1.value='DATE'"/>
		  <label></label>
		 <?php
		   $requete = "SELECT date_sortie FROM servcart WHERE date_sortie BETWEEN '$date_sortie' AND '$date_sortie1' and uf='$uf'";
			$req = mysql_query($requete) or die( mysql_error() ) ; 		
		 ?>      
		</td>    
	   <tr>
	   <td height="32" colspan="5" align="left">
		
		  <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> 
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
je n'ai pas encore trouvé la solution...grrrrr..:-( quand je test dans phpmyadmin ma requête pour les dates est exacte, alors question^où ce trouve mon erreur ????
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
quelqu'un aurait une idéee de génie..:-)
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
salut!
me revoila.
Si dans phpmyadmin la requête marche très bien,c'est que dans ta page php tu as du oublié quelque chose ou tu ne transmet pas les bonnes valeurs au niveau de tes input.
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
Salut,
je vais regarder...
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
bon j'ai regardé..j'ai fais un echo $date_sortie, rien ne s'affiche...je pense que ma requete a un souci si ma variable ne me renvoye rien...
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
c'est deux variables qui ont un problème pas ma requête je voulais dire :$date_debut' , '$date_fin..j'ai changé les noms pour ne pas confondre avec la variable $date_sortie qui est ma colonne date_sortie
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
j'en était sûr que les variables dates sont vides,raison pour laquelle ta requête ne tient pas compte des deux dates.j'ai vu dans tes champs texte que tu as rajouté du javascript pour donner une valuer à tes dates,si tu enlèves cette partie de la value ça marche ton datepicker?si oui,essaye de tester pour voir si tu transmet bien les deux dates.
0
fauve1512 Messages postés 206 Date d'inscription   Statut Membre Dernière intervention   1
 
salut bissdebrazza,
J'avais déjà enlever la partie javascript...voici le code pour te le remémorer un peu..

	
		 <?php
		 var_dump($_POST);
 
		 if (isset($_POST['UF']))
			 {$uf=$_POST['UF'];
			 }
			 else
			 {$uf="";}
	
		if (isset($_POST['service']))
			{$v_service=$_POST['service'];
			}
			else
			{$v_service="";}
		
		 if (isset($_POST['date_debut']))
			{$v_date_debut=$_POST['date_debut'];
			}
			else
			{$v_date_debut="";}			
		
		if (isset($_POST['date_fin']))
			{$v_date_fin=$_POST['date_fin'];
			}
			else
			{$v_date_fin="";}		

		 if (isset($_POST['date_sortie']))
			{$date_sortie=$_POST['date_sortie'];
			}
			else
			{$date_sortie="";}
					
		 ?>      
          <table width="580" height="151" border="3">
	        <tr>
	        <td height="39" colspan="5" align="center"  style="font-size:24px">Consommations des cartouches
           <tr>
  	           <form  name="envoyer" method="post" action="index.php?idpage=3">    
	       <td height="26" colspan="5" align="center">  
		       <label>Entre :  </label>  
	            <input type="text" id="datepicker" name="DATE_SORTIE"  onclick="DATE_SORTIE.value='DATE'"/>
		     <label> Et :</label>
	            <input type="text" id="datepicker1" name="DATE_SORTIE1" onclick="DATE_SORTIE1.value='DATE'"/>
		    <label></label>
          
      <?php   			         
	   $requete = "SELECT date_sortie FROM servcart WHERE date_sortie BETWEEN '$v_date_debut' and '$v_date_fin'" ;
	   $req = mysql_query($requete) or die( mysql_error()) ;     
      ?> 	  	
		   </td>    
	     <tr>
	      <td height="32" colspan="5" align="left">		
		  <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" />
	 
            <tr>    
			 <th width="52" height="36" bgcolor="#5ab9d8" scope="col">UF</th>
			 <th width="158" bgcolor="#5ab9d8" scope="col">SERVICE</th>
			 <th width="192"  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['service'])
		){  $service = $_POST['service'];
			   
			$requete2 = "SELECT uf,service,cartouche,sortie_stock,DATE_FORMAT(date_sortie,'%d/%m/%Y') AS DateTemps FROM servcart WHERE service='$service' ";							   
			$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['DateTemps']; ?></td>
			 <td><?php echo $donnees2['sortie_stock']; ?></td>	  
         </tr>
		 <?php           		          
				}}?> 
		</form>	 
	</table>


comme tu peux le voir tout au début j'ai fait un var_dump qui me renvoye ceci

array
'DATE_SORTIE' => string '01/09/2011' (length=10)
'DATE_SORTIE1' => string '08/09/2011' (length=10)
'service' => string ' Archives' (length=9)
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
bien,au vu des données transmises,je vois que tout est ok. maintenant j'ai une question,dans ta BDD la date a le même format que celui que tu transmet?
0