IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

intervalle dates +liste déroulante [MySQL]


Sujet :

PHP & Base de données

  1. #21
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    j'ai fait un echo de ma requête et cela me retourne une ligne vide et dans phpmyadmin voici le résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    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

  2. #22
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    après avoir fait des echo sur dat_début et date_fin cela me retourne ceci :
    date debut: 01/09/2011 date fin: 08/09/2011 et dans bdd c'est en type date mais format US donc j'ai un conflit entre ma bdd et ma page,comment gérer cela dans mon code..car les dates c'est un début pour moi..????

  3. #23
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Donc on reviens au dates! Dans to code converti date_début et date_fin dans le format de ta BDD avant de faire la requete SQL.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function convertionDate($dateEur){
    $rsl = explode ('/',$dateEur);
    $rsl = array_reverse($rsl);
    return implode($rsl,'-');
    }
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo convertionDate("01/02/2003"); ?>
    Donne comme résulat => 2003-02-01

  4. #24
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    ou appeller cette function???

  5. #25
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Juste avant ta requête $requete2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $date_debut=convertionDate($_POST['date_debut']);
    $date_fin=convertionDate($_POST['date_fin']);
    Le code complet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    <?php
    function convertionDate($dateEur){
    $rsl = explode ('/',$dateEur);
    $rsl = array_reverse($rsl);
    return implode($rsl,'-');
    }
     
    //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=convertionDate($_POST['date_debut']);
    $date_fin=convertionDate($_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>

  6. #26
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    le résultat le voici pour l'echo : date debut: 2011-09-01 date fin: 2011-09-08 donc j'ai mes dates au format mysql mais toujours pas de ligne...

  7. #27
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Remplace mysql_fetch_array par mysql_fetch_assoc dans tout ton code

  8. #28
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    cela ne change rien...

  9. #29
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    c'est incroyable quand même...le post ne se fait pas, la requête ne passe pas,qu'est ce que j'ai bien pu oublier..pour n'avoir aucun retour de lignes????

  10. #30
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Ajoute cette ligne au début de ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error_reporting(E_ALL);

  11. #31
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    rien n'en ressort ..

  12. #32
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Envoi les résultat HTML de ta page.

  13. #33
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    A la ligne 41 de ton code
    ca devrait être comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $service; ?>

  14. #34
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    merci pour la rectification..mais cela n'a pas d'impact sur mon problème

  15. #35
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    Envoi les résultat HTML de ta page.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     <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>
    je t'envoye seulement la partie qui nous interesse car cela risque d'être plutot long pour html de la liste j'ai bien toute la liste

  16. #36
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Tu fait appel a $uf au début du code mais il ne figure pas dans aucun contrôle du formulaire. $_POST['uf'] n'existe pas! ton formulaire renvoi seulement service, date_debut, et date_fin. Tu doit ajouter ou checkbox ou bouton radio pour séléctionner uf.

  17. #37
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    uf est déclaré en variable au début de mon code car uf me sert justement a récupérer la ligne dans mon select..si je l'enlève cela me fait une erreur comme quoi la variable n'est pas définie

  18. #38
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 271
    Points : 491
    Points
    491
    Par défaut
    Selon le code que tu as transmi, $uf sera toujours vide
    Je ne vois aucun <select name="uf" >
    Si tu enlève $uf du code, tu doit l'enlever aussi de la requête, c'est normal que tu n'a aucune ligne puisque $uf est toujours vide.
    Tu as un seul Select dasn ton formulaire c'est service, ou est l'autre select de uf?
    D'ailleurs pourquoi sauvegarder uf?
    Ton formulaire a ce que j'ai compris, affiche les statistiques de consommation d'un service durant une période donnée. donc il suffit de choisir le service et l'intervalle de dates et cliquer sur rechercher, lors du rafraichisement de la page, tu sauvegarde juste le service choisi.

  19. #39
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    hourraaaaaaaaaaaaaaaaaaaaaaaaa...merci de ton dernier post car en réfléchissant sur la requete mysql et de pour ma page et grâce à ta réflexion cela marche....en fait il fallait juste que nous enlevions uf=$uf puique vide dans la condition where..Merci beaucoup fab256, une semaine de perdu pour ça..

  20. #40
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 56
    Points : 11
    Points
    11
    Par défaut
    j'ai crié victoire trop vite car il me récupère bien entre les dates voulu mais maintenant plus par rapport au choix de ma liste déroulante donc il me faut uf

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [XL-2010] Affichage date liste déroulante
    Par kbenmya dans le forum Excel
    Réponses: 9
    Dernier message: 24/04/2013, 16h09
  2. Nombre de jours entre 2 dates + liste déroulante
    Par benavril dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/05/2009, 09h36
  3. [Dates] Liste déroulante date et années bissextiles
    Par Jiraiya42 dans le forum Langage
    Réponses: 7
    Dernier message: 03/07/2007, 00h04
  4. activer/désactiver une liste déroulante + date calendrier
    Par toome dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 05/01/2006, 15h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo