J'ai trouvé ce code ci-dessous qui me permet enfin de lister le contenu d'un répertoire précis de mon serveur ftp (qui est sur ma machine) en php en réalisant directement des liens pour les dossiers présent.
Cela dit j'aimerais également générer les liens pour ce qui est des fichiers; car dans le code si dessus les fichiers sont simplement lister.
Si quelqu'un réussisait à me dire ce qu'il faut que je rajoute dans ce code pour y arriver ce serai le bienvenue.
Merci
Le code:
<?php
$title=explode('/',$_GET['dir']);
echo 'Contenue de : /'.$title[sizeof($title)-1];
?>
</title>
<link href="css.css" rel="stylesheet" title="Style" type="text/css" media="screen" />
</head>
<body>
<?php
function isfile($ftp,$file)
{
if(@ftp_size($ftp,$file)!=-1)return true; else return false;
}
$host='xx.xxx.xxx.xxx';
$login='x';
$pwd='xxxxxx';
$default_redirect='./mon_dossier';
$size_total=0;
$nb_file=0;
$nb_folder=0;
if(!$ftp=ftp_connect($host))
{
echo 'Impossible de se connecte au serveur ftp <b>'.$host.' </b>.';
exit;
}
if(!ftp_login($ftp,$login,$pwd))
{
echo 'Impossible de vous identifier au serveur '.$host.' avec les identifiant suivant login:'.$login.' password:'.$pwd.' . ';
exit;
}
if(isset($_GET['dir'])&&!empty($_GET['dir']))
{
if(!$nlist =ftp_nlist($ftp,$_GET['dir']))
{
echo 'Impossible de liste le repertoire '.$_GET['dir'].' ! ';
}else{
echo '<table cellpadding="2">';
$lien=str_replace(' ','%20',$_GET['dir']);
echo '<tr><td><a href="?dir='.$lien.'/..'.'"><img src="file/parent.gif" >Dossier Parent</a></td><td>..</td></tr>';
foreach($nlist as $file)/*Enumerer se que trouve dans le dossier un par un*/
{
$FILE=$_GET['dir'].'/'.$file; /*Chemin complet du fichier*/
$FILE_ENCODE=str_replace(' ','%20',$FILE); /*Pour les lien*/
if(!$size=@ftp_size($ftp,$FILE))$size=0; /*Donne la taille du fichier*/
if(isfile($ftp,$FILE)){
echo '<tr id="_file"><td id="file"><img src="file/file.png" />'.$file.'</td><td>size: '.$size.' Octets</td></tr>'."\n";
$nb_file++;
}else{
echo '<tr id="_folder"><td id="folder"><img src="file/folder.png" /><a href="?dir='.$FILE_ENCODE.'"> '.$file.'</a></td><td>size: --</td></tr>'."\n";
$nb_folder++;
}
$size_total+=$size;
}/*fin de la boucle de l'enumeration des fichier & dossier*/
echo '</table>';
$taile_mo=round($size_total/1000000,2);
echo '<p class="ped"><br />fichier:'.$nb_file.' | dossier :'.$nb_folder.' | size total:'.$size_total.' Octets ('.$taile_mo.' mo)</p>';
}
}
if(empty($_GET)){
echo '<meta http-equiv="Refresh"
content="0;URL=?dir='.$default_redirect.'">';
}
ftp_quit($ftp);
?>
Merci
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]