Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1941 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

   recherche de fichiers par interval de dates

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

recherche de fichiers par interval de dates

n°1853004
essse
Posté le 19-02-2009 à 15:10:16  profilanswer
 

rebonjour
 
1/je tiens tout d'abord a m'excuser pour mes ecrits dans cette demande d'aide:
http://forum.hardware.fr/hfr/Progr [...] 1230_1.htm
je me suis mal fait comprendre
 
2/lorsque je demande un code je voulais en fait demander comment faire pour y arriver  j'ai essayer quelque chose donc j'ai cree un code en php que voici qui ne me donne pas ce que je veux lorsque je mets comme 1ere date 011208 ET 2eme date 311208 (ce qui veut dire que je veux les fichiers compris entre ces deux dates)
il me donne des fichiers datant du 241108 ce qui est logique  en suivant le code mais moi je ne veux que les fichiers dont la date est comprise entre 011208 et 311208
 

Code :
  1. <form action= "new2.php" method="post">
  2.       <fieldset>
  3.          <legend>Recherche des fichiers</legend>
  4.  
  5.              <label > Corps administratif     : </label ><input type ="text" name= "section" value= "<?php echo $_POST['section']; ?>"/> <br/>
  6.              <label > Type du courrier: </label > <input type ="text" name= "type" value= "<?php echo $_POST['type']; ?>" /><br/>
  7.  
  8.              <label > Reference du courrier: </label ><input type ="text" name= "reference" value= "<?php echo $_POST['reference']; ?>"/><br/>
  9.              <label > Objet du courrier   : </label ><input type ="text" name= "objet" value= "<?php echo $_POST['objet']; ?>"/>   <br/>
  10.             <label > Date du courrier (jjmmaa)   : </label ><input type ="text" name= "date" value= "<?php echo $_POST['date']; ?>"/>   <br/>
  11.             Recherche par date:
  12.              <label > Recherche du courrier par jours (jj)   : </label ><input type ="text" name= "dateApproxiJJ" value= "<?php echo $_POST['dateApproxiJJ']; ?>"/><br/>
  13.              <label > Recherche du courrier par mois (mm)   : </label ><input type ="text" name= "dateApproxiMM" value= "<?php echo $_POST['dateApproxiMM']; ?>"/><br/>
  14.              <label > Recherche du courrier par annees (aa)   : </label ><input type ="text" name= "dateApproxiAA" value= "<?php echo $_POST['dateApproxiAA']; ?>"/><br/>
  15.              RECHERCHE PAR INTERVAL DE DATE:
  16.             1ere date<input  type = "text" name="date1"/>
  17.             2ème date<input type = "text" name = "date2">
  18.              <input type ="submit" name ="validez" value ="validez" />
  19.              <input type ="submit" name ="tous" value ="affichez tous les fichiers PDF" />
  20.  
  21.              <input type="reset" name ="effacez" value="effacez"/>    
  22.         </fieldset>
  23.      </form>                         
  24. </div>
  25.  
  26. <?php
  27.           if (isset($_POST['validez'])){
  28.             
  29.   // une fois validez existe on traite le formulaire en ouvrant le dossier et en entrant dans la fonction
  30.     
  31.              $dossier = 'Courrier/' ;
  32.              $list = scandir($dossier);
  33.              foreach ($list as $chaine) //identique a for mais specifié au tableau, tant que chaque element de la liste est une chaine
  34.                   {
  35.      // on mets les elements de la chaine dans un tableau
  36.                     $divfichier = explode('_',$chaine); //on decoupe les fichiers
  37.                     
  38.                     
  39.     // on met le dernier element de la chaine dans un tableau
  40.     
  41.                     $divfichierdateInterval = explode ('.', $divfichier[4]);
  42.                     
  43.     //creation des variables
  44.                    $dateApproxiJJ = ($_POST['dateApproxiJJ']);
  45.             $dateApproxiMM = ($_POST['dateApproxiMM']);
  46.             $dateApproxiAA = ($_POST['dateApproxiAA']);
  47.             $date1 =  ($_POST['date1']);
  48.             $date =  ($_POST['date']);
  49.                 $date2 = ($_POST['date2']);
  50.                     
  51.     // jeu de majuscule sur les POST et fichiers
  52.  
  53.                     $section = strtoupper($_POST['section']);
  54.                     $type = strtoupper ($_POST['type']);
  55.                    $reference = strtoupper ($_POST['reference']);
  56.                    $objet = strtoupper ($_POST['objet']);
  57.                     $dateApproxiAA = strtoupper ($_POST['dateApproxiAA']);
  58.                     $chaine = strtoupper ($chaine);
  59.  
  60.                     
  61.     //selection de recherche par date
  62.                     
  63.                     $ApproxiJJ = substr($divfichier[4] , 0, 2); // recupere le jour de la date
  64.                     $ApproxiMM = substr($divfichier[4] , 2, 2); // recupere le mois de la date
  65.                     $ApproxiAA = substr($divfichier[4] , 4, 2); // recupere l'année de la date
  66.                     //les jours
  67.                    $date1JJ = substr($date1,0,2);
  68.                     $date2JJ = substr($date2,0,2);
  69.                     $divfichierdateIntervalJJ = substr($divfichierdateInterval[0],0,2);
  70.                     //les mois
  71.                    $date1MM = substr($date1,2,2);
  72.                     $date2MM = substr($date2,2,2);
  73.                     $divfichierdateIntervalMM = substr($divfichierdateInterval[0],2,2);
  74.                     //les annees
  75.                     $date1AA = substr($date1,4,2);
  76.                     $date2AA = substr($date2,4,2);
  77.                     $divfichierdateIntervalAA = substr($divfichierdateInterval[0],4,2);
  78.                    
  79.  
  80.  
  81.   // on formalise les accents
  82.                     $chaine = strtr ($chaine, "é,è,ë,â,ä,à,ï,î,ô,ö,û,ü", "e,e,e,a,a,a,i,i,o,o,u,u" );
  83.                     
  84.     // on comparre les POSTS au fichiers
  85.                 
  86.                     if ((preg_match('`'.$section.'`', $divfichier[0])) AND
  87.                         (preg_match('`'.$type.'`', $divfichier[1]))  AND
  88.                             (preg_match('`'.$reference.'`', $divfichier[2]))AND
  89.                                 (preg_match('`'.$objet.'`', $divfichier[3])) AND
  90.                                     (preg_match('`'.$date.'`', $divfichier[4])) AND
  91.                                         (preg_match('`'.$dateApproxiJJ.'`', $ApproxiJJ)) AND
  92.                                         (preg_match('`'.$dateApproxiMM.'`', $ApproxiMM)) AND
  93.                                         (preg_match('`'.$dateApproxiAA.'`', $ApproxiAA)) AND
  94.                                         (($date1JJ <= $divfichierdateIntervalJJ && $divfichierdateIntervalJJ>= $date2JJ) AND
  95.                                         ($date1MM <= $divfichierdateIntervalMM && $divfichierdateIntervalMM>= $date2MM) AND
  96.                                         ($date1AA <= $divfichierdateIntervalAA && $divfichierdateIntervalAA>= $date2AA)))
  97.                        {echo '<a href="'.$dossier.$chaine.'">'.$chaine.'</a><br/>';}
  98.                   }              }                                         
  99. ?>                   
  100. </div>
  101. </body>
  102. </html>


 
ce code n'est pas encore fini en effet voir ici
http://forum.hardware.fr/hfr/Progr [...] 0699_2.htm
j'ai ce souci avec "strpos" et je ne trouve pas l'erreur...
 
voila j'espere que maintenant je suis conforme excusez moi encore et derniere question
Pourquoi etre aussi radical :??: , attendez au moins une reponse...
 
merci pour votre aide

mood
Publicité
Posté le 19-02-2009 à 15:10:16  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

   recherche de fichiers par interval de dates

 

Sujets relatifs
recherche de fichiers par interval de datesIndexer / Search : moteur de recherche
Documentation/Guide/Recherche de composants ActiveX ?Fonctionnement d'un moteur de recherche externe
commande executer rechercheEtudiante en lettre recherche aide pour devoir !!2eme édition
Etudiante en lettre recherche aide pour devoir !! 
Plus de sujets relatifs à : recherche de fichiers par interval de dates


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR