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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
<html>
<body>
<link rel="stylesheet" media="screen" type="text/css" title="tableau" href="css/table.css" />
<table border="1" cellpadding="4" align="center">
<tr>
<td colspan="2" class="dossier">
<img src='pictures/earth.png'>
Parcours de fichier en largeur
</td>
</tr>
<td colspan="2" class="dossier">
<?php
$racine='./index.php'; //on stock le chemin vers la racine
echo "<img src='pictures/racine.png'>";
echo "<a href='$racine'> Racine</a>"; //et on fait un lien vers celui-ci
?>
</td>
</tr>
<?php
// On ouvre les dossiers et on stock le contenu
function list_dir($var,&$tab)
{
if(is_array($tab)) $tab[$var] = array ("dir" => array(), "files" => array());
else $tab = array($var => array ("dir" => array(), "files" => array()));
$dir = opendir($var);
while($file = readdir($dir))
{
if($file != "." && $file != "..")
{
if(is_dir("$var/$file"))
{
$tab[$var]["dir"][]=$file;
list_dir("$var/$file",$tab);
}
else $tab[$var]["files"][]=$file;
}
}
/* La fonction retourne un tableau de valeur contenant les dossiers & fichiers en arborescence */
return $tab;
closedir($dir);
}
$rep=".";
$tab=array();
// on appelle la fonction qui va nous permettre de lister l'ensemble des répertoires et des fichiers contenus
$tab=list_dir($rep,$tab);
//tri du tableau
ksort($tab);
//on parcourt le tableau
foreach($tab as $arborescence=>$tab_files_dir) // $arborescence=arborescence par rapport à la racine
{
//et on stocke les fichiers et les dossiers dans deux variables différentes
$dir=$tab_files_dir["dir"];
$files=$tab_files_dir["files"];
//on parcours le tableau qui contient les dossiers
foreach($dir as $dir2)
{
//on affiche le tout dans le table
?>
<tr>
<td colspan="2" class="dossier">
<?php
echo "<img src='pictures/dir.png'>$arborescence/$dir2"; //avec un icône pour les dossiers
?>
</td>
</tr>
<?php
}
foreach($files as $files2)
{
$extension = substr($files2, strrpos($files2, ".")+1); //on récupère l'exension des fichiers
?>
<tr>
<td class="fichier">
<?php
if(file_exists("pictures/$extension.png")) echo "<img src='pictures/$extension.png'>"; //afin d'y mettre un icône qui correspond sous le format extension.extension
else
echo "<img src='pictures/unkown.ico'>";
echo "<a href='$arborescence/$files2'>$arborescence/$files2</a>"; //on affiche l'ensemble des fichiers des dossiers et sous-dossiers
?>
<td class="fichier">
<?php
echo "<a href=\"$arborescence/$files2\" target=\"_blank\"> nouvelle fenêtre</a>"; //ouverture du fichier dans une nouvelle fenêtre
?>
</td>
</td>
</tr>
<?php
}
}
?>
</table>
</body>
</html> |