Je crois effectivement que je vais prendre ta solution. J'aurais voulu passer par un tableau associatif, mais soit ce n'est pas faisable, soit je m'y prends mal. Et comme j'ai déjà passé pas mal de temps dessus je vais passer à autre chose.

Merci beaucoup.

Sèb

Le 10/09/2014 09:26, yannick a écrit :

salut Seb, il faut que chaque élément du tableau $fichier commence par
le timestamp  suivi par le nom du fichier,
tu aura donc un seul tableau .
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = filemtime." ".$element}
j'ai ajouté un espace entre le tamps et le nom du fichier pour pouvoir
extrair uniquement le nom du fichier plus tard .
mais tu pourras aussi affiché la date de dernière modification ..
----- Original Message ----- From: "Sèb" <[email protected]>
To: <[email protected]>
Sent: Wednesday, September 10, 2014 4:25 AM
Subject: [progliste] Re: aide php


Coucou.
après vérification sans aucun paramètre filemtime donne déjà le
résultat en timestamp. J'ai donc fait ceci :
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element; $tdate[] =
filemtime($element);}

Si j'affiche un aperçu du contenu des deux tablaux j'obtiens bien le
nom et le timestamp correspondant à chaque fichier . Mais sort n'agit
pas lorsqu'il doit trier le tableau $tdate.
Je ne comprends vraiment pas pourquoi. Quelqu'un a une idée ?


Sèb

Le 09/09/2014 08:34, bbr a écrit :

Bonjour
  tu récupères la date du fichier avec filemtime
  tu transformes en unix time avec strotime
et après tu peux trier sur la date

Le 09/09/2014 03:54, Sèb a écrit :
Salut la liste.
Je suis toujours dans mes bricolages. J'ai récupéré un script listant
les fichiers d'un dossier et permettant de les télécharger. Et
suffisamment simple pour que j'arrive à le personnaliser sans
difficulté. Ou presque. Il y a une dernière chose que j'aimerais bien
pouvoir faire et où je bute. Les fichiers sont listés en ordre
alphabétique, j'aimerais les avoir par date de modification. Voici le
code.

<?php
// Création de la fonction taille
function taille($fichier){
     global $size_unit;
     // Lecture de la taille du fichier
     $taille = filesize($fichier);
     // Conversion en Go, Mo, Ko
     if ($taille >= 1073741824)
         { $taille = round($taille / 1073741824 * 100) / 100 . " Go"; }
     elseif ($taille >= 1048576)
         { $taille = round($taille / 1048576 * 100) / 100 . " Mo"; }
     elseif ($taille >= 1024)
         { $taille = round($taille / 1024 * 100) / 100 . " Ko"; }
     else
         { $taille = $taille . " o"; }
     if($taille==0) {$taille="-";}
         return $taille;
}

$dir_nom = '.'; // dossier listé (pour lister le répertoir courant :
$dir_nom = '.'  --> ('point')
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire
n\'existe pas'); // on ouvre le contenu du dossier courant

while($element = readdir($dir)) {
     if($element != '.' && $element != '..') {
         if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
         else {$dossier[] = $element;}
     }
}

closedir($dir);
echo "<a href=\"../\">dossier pr&eacute;c&eacute;dent</a>\n\n";
if(!empty($dossier)) {
     sort($dossier); // pour le tri croissant, rsort() pour le tri
décroissant
     echo "<h1>liste des dossiers</h1>\n";
     echo "<ol>\n";
         foreach($dossier as $lien){
             echo "<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
                 echo date ("Y m d, H:i", filemtime($lien));
         }
     echo "</ol>";
}

if(!empty($fichier)){
     sort($fichier);// pour le tri croissant, rsort() pour le tri
décroissant
     echo "<h1>liste des fichiers</h1>\n";
     echo "<ol>\n";
         foreach($fichier as $lien) {
                         if($lien != '.' && $lien != '..' && $lien !=
'index.php' && $lien != 'dl.php' && $lien != 'op.php' && $lien !=
'public_html' && $lien != '.ftpquota' && $lien != 'gi-bin' && $lien !=
'pureftpd-upload' && $lien != 'accueil.php' && $lien != 'ze.php' &&
$lien != 'jf.php' && $lien != '.htaccess'){
                 echo "<li><a href=\"$dir_nom/$lien \" >$lien</a><text
style=\"float: right;\">";
                 echo taille($lien);
                 echo ", ";
                 echo date ("Y m d, H:i", filemtime($lien));
                 echo "</text></li>\n";
             }
         }
     echo "</ol>";
  }
?>


Progliste :
Pour se dsinscrire de la liste :
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pices jointe sont activs leur taille est
limit  2 MO
Pour accder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en
priv, je vous rpondrez en priv.


Progliste :
Pour se d�sinscrire de la liste :
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/

Je vous rappelle que les pi�ces jointe sont activ�s leur taille est
limit� � 2 MO
Pour acc�der aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�,
je vous r�pondrez en priv�.



Progliste :
Pour se d�sinscrire de la liste : 
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/       

Je vous rappelle que les pi�ces jointe sont activ�s leur taille est limit� � 2 MO
Pour acc�der aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en priv�, je 
vous r�pondrez en priv�.
        
        

Répondre à