Trier le résultat d'une requête

Résolu/Fermé
jipy63 - 20 juil. 2007 à 09:09
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 - 20 juil. 2007 à 11:04
Bonjour,
J'essaye de trier un résultat dans l'ordre décroissant mais je n'y arrive pas !
Quelqu'un pourrait me donner le code pour le tri ?
Voici le script complet :

$dir="mon_dossier/"; 
$mydir=opendir("$dir"); 
while($entryName=readdir($mydir)) 
{ 
$fichier[]=$entryName; 
}
closedir($mydir); 
echo"<table width=100% class='blocw2'><tr><td>";
echo"<FONT FACE='Arial'COLOR='yellow' size='4'><DIV ALIGN='left'><B>Liste</B></font></div></td>";
echo"</td></tr>";
echo"<td width=100% ALIGN='LEFT' VALIGN='TOP'><font size='2'>";
while(list($key,$fic)=each($fichier)) 
{ 
if (eregi("[.]",$fic))
{ 
if (!eregi("^[.]",$fic))
{
$lien="$dir"."$fic"; 
echo"<A HREF='$lien' TARGET='_BLANK'>$fic</A><br>";
}
}
} 
echo"</td></tr></table>";


Merci

10 réponses

jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 10:18
Ok, je m'y suis retrouvé, j'ai modifié sort par arsort et c'est règlé, encore merci
1
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 10:30
Est-il possible dans l'affichage de ne pas faire apparaitre l'extenssion de fichier ?
1
Utilisateur anonyme
20 juil. 2007 à 09:48
moi je serai toi, je recupererre les nom de dossier dans un tableau, ensuite tu fais un sort(ton tableau);
0
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 09:56
Ok pour cela mais je ne suis pas spécialiste ! Ici l'important c'est de trier par nom de fichier, ils commencent tous par la date ex: "2007-07-20-mon_fichier.pdf" ou "2007-07-19-mon_fichier.pdf", et j'aimerais que dans le tableau final le plus récent arrive en première ligne

2007-07-20-mon_fichier.pdf
2007-07-19-mon_fichier.pdf

le tableau final est à l'adresse : https://www.sportmoteur.be

Merci
0

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

Posez votre question
Utilisateur anonyme
20 juil. 2007 à 10:06
$dir="mon_dossier/";
$mydir=opendir("$dir");
$fichier=array();
while($entryName=readdir($mydir))
{
$fichier[]=$entryName;
}
closedir($mydir);
echo"<table width=100% class='blocw2'><tr><td>";
echo"<FONT FACE='Arial'COLOR='yellow' size='4'><DIV ALIGN='left'><B>Liste</B></font></div></td>";
echo"</td></tr>";
echo"<td width=100% ALIGN='LEFT' VALIGN='TOP'><font size='2'>";
sort($fichier);
foreach($fichier as $kety=>$fic){
if (eregi("[.]",$fic))
{
if (!eregi("^[.]",$fic))
{
$lien="$dir"."$fic";
echo"<A HREF='$lien' TARGET='_BLANK'>$fic</A><br>";
}
}
}
echo"</td></tr></table>";


voila pour ton code


sinon pour un exemple : https://www.php.net/manual/fr/function.sort.php
0
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 10:12
merci, cela fonctionne mais pour trier en décroissant car ici il trie dans l'ordre croissant ?
0
Utilisateur anonyme
20 juil. 2007 à 10:35
oui, tu rognes les 4 derniers caracteres lol

le .xxx

regarde les fonctions sur les strings, tel que substr ou autre.
0
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 10:52
Je viens d'essayer de placer le code mais cela me fout une erreur a chaque coups !

echo substr($fic, -2);
0
Utilisateur anonyme
20 juil. 2007 à 10:57
echo substr($fic, 0,strlen($fic)-3); ou echo substr($fic, 0,strlen($fic)-4);
0
jipy63 Messages postés 10 Date d'inscription vendredi 20 juillet 2007 Statut Membre Dernière intervention 21 février 2009 2
20 juil. 2007 à 11:04
Grand merci, cela est arrangé.
Voici la portion de code adaptée :

$lien="$dir"."$fic";
echo "<A HREF='$lien' TARGET='_BLANK'>";
echo substr($fic, 0,strlen($fic)-3);
echo "</a><br>";

Bonne journée
0