Bonjour, sur une partie de mon site ou je met à disposition des fichiers (pdf, doc, xsl, etc.)
j'ai fait un simple listing de mon dossier qui me permet d'afficher tous les fichiers présenst sous forme de liste.
j'ai comme idée d'associer à chacun des documents présents dans cette liste une icône en rapport avec l'extension du fichier... Mais je bloque, je ne sais pas trop comment aborder le problème.
Si dessous mon code de listing
En fait j'ai trouvé sur le net un code qui permet soit disant d'afficher une icône en fonction de l'extension mais je n'arrive pas à le relier avec mon listin
voici ce code
Pourriez-vous m'aiguiller svp? Merci
Modifié par foxprox (11 Aug 2009 - 12:12)
j'ai fait un simple listing de mon dossier qui me permet d'afficher tous les fichiers présenst sous forme de liste.
j'ai comme idée d'associer à chacun des documents présents dans cette liste une icône en rapport avec l'extension du fichier... Mais je bloque, je ne sais pas trop comment aborder le problème.
Si dessous mon code de listing
<?php
$dir_nom = 'media/fichier'; // 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
$fichier= array(); // on déclare le tableau contenant le nom des fichiers
$dossier= array(); // on déclare le tableau contenant le nom des dossiers
while($element = readdir($dir)) {
if($element != '.' && $element != '..') {
if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
else {$dossier[] = $element;}
}
}
closedir($dir);
if(!empty($dossier)) {
sort($dossier); // pour le tri croissant, rsort() pour le tri décroissant
echo "Liste des dossiers accessibles dans '$dir_nom' : \n\n";
echo "\t\t<ul>\n";
foreach($dossier as $lien){
echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
}
echo "\t\t</ul>";
}
if(!empty($fichier)){
sort($fichier);// pour le tri croissant, rsort() pour le tri décroissant
echo "Liste des documents accessibles";
echo "\t\t<ul>\n";
foreach($fichier as $lien) {
echo "\t\t\t<li><img src='media/icone/".icone_ext('$dir_nom/$lien ')."'><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
}
echo "\t\t</ul>";
}
?>
En fait j'ai trouvé sur le net un code qui permet soit disant d'afficher une icône en fonction de l'extension mais je n'arrive pas à le relier avec mon listin

voici ce code
<?php
function icone_ext($fichier)
{
// icone par defaut si l'extention n'a pas d'icone
$icone_defaut = "excel.ico";
// tableau des nom d'icone par aport a l'extention
$tab_icone = array("doc"=>"doc.ico",
"pdf"=>"pdf.ico" );
// recupere extention sur le nom de fichier
$tab_fichier = explode(".",$fichier);
$extention = $tab_fichier[count($tab_fichier)-1];
// si l'extention est dans la liste
if (array_key_exists($extention,$tab_icone))
return $tab_icone[$extention];
// si elle n'existe pas
else return $icone_defaut;
}
echo "<img src='media/icone/".icone_ext('monfichier.pdf')."'> monfichier.pdf"
?>
Pourriez-vous m'aiguiller svp? Merci
Modifié par foxprox (11 Aug 2009 - 12:12)