Forum » Server-Side scripting » Bestanden op datum selecteren
devow.nl
Berichten: 1592
avatar
Offline Stuur privebericht
Hallo allemaal,

Ik wil een bestand uit mijn derectory op datum selecteren. Maar wanneer het een .doc bestand is kan hij de datum niet uitlezen.

Weet iemand de functie die gewoon van alle dingen de datum uit kan lezen?

filemtime deze leest blijkbaar alleen .txt uit..
Laatst gewijzigd door Luc op 2011-01-31 19:19:48
31-01-2011 19:19
Dit topic is 302 keer bekeken door 57 verschillende leden
Reacties op: "Bestanden op datum selecteren"
1
Berichten: 491
avatar
Offline Stuur privébericht
das een goede,
Code | Selecteer Alles
minimaliseren
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
//Starts Here
//Put here the directory you want to search for. Put / if you want to search your entire domain
$dir='/';

//Put the date you want to compare with in the format of:  YYYY-mm-dd hh:mm:ss
$comparedatestr="2006-08-12 00:00:00";
$comparedate=strtotime($comparedatestr);

//I run the function here to start the search.
directory_tree($dir,$comparedate);

//This is the function which is doing the search...
function directory_tree($address,$comparedate){

 @
$dir opendir($address);

  if(!
$dir){ return 0; }
        while(
$entry readdir($dir)){
                if(
is_dir("$address/$entry") && ($entry != ".." && $entry != ".")){                            
                        
directory_tree("$address/$entry",$comparedate);
                }
                 else   {

                  if(
$entry != ".." && $entry != ".") {
                 
                    
$fulldir=$address.'/'.$entry;
                    
$last_modified filemtime($fulldir);
                    
$last_modified_strdate("Y-m-d h:i:s"$last_modified);

                       if(
$comparedate $last_modified)  {
                          echo 
$fulldir.'=>'.$last_modified_str;
                          echo 
"<BR>";
                       }

                 }

            }

      }

}

Bron = php.net
31-01-2011 21:19
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
Bedankt deze werkt nu althans hij leest de datum uit.
Maar hoe zou ik de bestanden nu op datum kunnen selecteren (van nieuw naar oud)

Ik werk nooit echt met directory uitlezen, maak er normaal een database voor. Maar het leek me eens handig het zonder database te doen.
02-02-2011 10:58
Berichten: 491
avatar
Offline Stuur privébericht
Ik weet nu absoluut dat jij niet hebt gezocht op google.

Ik doe allebei jouw vragen in google.

en wat krijg ik bij de eerste resultaat?

Code | Selecteer Alles
minimaliseren
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
function LoadFiles($dir)
{
 
$Files = array();
 
$It =  opendir($dir);
 if (! 
$It)
  die(
'Cannot list files for ' $dir);
 while (
$Filename readdir($It))
 {
  if (
$Filename == '.' || $Filename == '..')
   continue;
  
$LastModified filemtime($dir $Filename);
    
$Files[] = array($dir .$Filename$LastModified);
 }

  return 
$Files;
}
function 
DateCmp($a$b)
{
  return (
$a[1] < $b[1]) ? -0;
}

function 
SortByDate(&$Files)
{
  
usort($Files'DateCmp');
}

$Files LoadFiles('data/');
SortByDate($Files);


Dit moet je vraag oplossen.
02-02-2011 12:18
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
Nou die kwam ik op google tegen en werkte bij mij tog anders niet hoor. Anders zou ik het hier niet vragen!

Maar er mag een slotje op, want degene waarvoor dit snel gemaakt moest worden was al tevreden met het script zoals het nu is.
02-02-2011 12:28
Berichten: 491
avatar
Offline Stuur privébericht
Het scriptje werkt hoor (net getest voor je)
02-02-2011 12:33
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
Bij mij toen niet, toen kreeg ik steeds die errors van filemtime dat hij de datum niet kon lezen, en vandaar dus dit topic.
02-02-2011 15:08
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
Hij bedoeld het laatste scriptje die alles in een array stopt en dan uitleest op nieuw naar oud.
02-02-2011 18:04
Reageer op: "Bestanden op datum selecteren"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden