Script mettre fichier dans l'ordre

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Script mettre fichier dans l'ordre

Re: Script mettre fichier dans l'ordre

par JcLoD » 03 sept. 2011, 17:13

Salut,

Ca n'avais pas marcher avec ce que tu m'avais envoyer, un collegue assez bon en php ma résolu le probleme.

Encore merci a+

Re: Script mettre fichier dans l'ordre

par Alf?> » 01 sept. 2011, 18:05

Salut,

Effectivement il boucle complète dans une boucle, donc il fallait pas oublier de modifier ceci :
number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1)
Par ceci :
number_format(filesize($dest_dir.$valeur)/1000000, 1)
Voilà tu en as 2 comme ça a modifier :wink: bonne journée !

Ps : j'ai peur que la pagination en prenne un coup... ce sera la surprise :lol:

Re: Script mettre fichier dans l'ordre

par JcLoD » 31 août 2011, 23:58

Re ^^,

Il y a un ptit souci : http://nightskill.mtxserv.fr/sourcetv.html

Voila comment est le script apres que j'ai mis ce que tu m'a donner:
<?php
// Nom du script : demolist_ftp.php
// Version : editer par JcLoD fonction not refresh
// Date : 27/9/2009                                                                                    
// Auteur : Thierry Vanneste alias jenlain 
// Email : [email protected]
// Licence : GNU GPL http://www.gnu.org/licenses/gpl.txt
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// P A R A M E T R A G E 
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
$ftp_server = "ftp.verygames.net"; // l'adresse ftp du serveur de jeu. Par exemple ftp.verygames.net
$ftp_user_name = "dedigame632"; // le username ftp par exemple server0000
$ftp_user_pass = ""; // le password ftp par exemple ********
$ftp_dir = "/servers/server3542/games/halflife_source/orangebox/cstrike/"; //le chemin vers le repertoire ftp sur le serveur de jeu où sont stockées les démos, avec un / au debut et à la fin, en general (/games/half-life/cstrike/).  
$dest_dir = "./"; //le chemin vers le repertoire sur le serveur web où seront stockées les démos evc un / au debut et à la fin. Le repertoire doit être inscriptible (chmod 777)
$url = "http://nightskill.mtxserv.fr/demos/"; // l'url vers le répertoire où seront stockées les démos avec un / au bout.
$del = "1"; // Si 1  supprime les fichiers sur le serveur ftp qui sont deja presents sur votre site web 
$limit = "12"; // Nombre de demos affichées par pages
$zipfile = "1"; // Si 1 les fichiers transférés seront compressés. (Pré-requis : php5 avec zlib)
// Pour connaitre le chemin vers la racine de votre serveur web, décommentez les deux lignes suivantes et relancez le fichier
//$root = getenv("DOCUMENT_ROOT") ;
//echo "<center>DOCUMENT_ROOT: " . $root . "</center>"; 
// Pour connaitre le repertoire ftp où sont affichées les démos, utilisez votre logiciel ftp, filezilla ou autre.
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// NE RIEN TOUCHER APRES CETTE LIGNE SI VOUS NE MAITRISEZ PAS LE CODE.
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head>
<style type="text/css">
<!--
body,td,th { 
	font-family: Arial, Helvetica, sans-serif;
	color: #FFFFFF; 
	font-size: 12px; 
}
a:link { 
	color: #FFFFFF; 
	text-decoration: none; 
}
a:visited { 
	text-decoration: underline; 
	color: #FFFFFF; 
}
a:hover { 
	text-decoration: none; 
	color: #FF0000; }
a:active { 
	text-decoration: none; 
	color: #FF0000; }
.page_numbers {
	display:table;           
	padding:0;
	margin:0 auto;
	font-family: arial, helvetica, sans-serif;
	white-space:nowrap;
	list-style-type:none;
}
* html .page_numbers {
	display:inline-block;
	width:1px;
	padding:0 2px;
 }  
.page_numbers li {
	display:table-cell;
 }
* html .page_numbers li {
	display:inline;
}
.page_numbers a {
	display:block;
	padding:0.2em 1em; 
	color:#FFFFFF; 
	text-decoration:none;
 }
* html .page_numbers a {
	display:inline-block;
	margin:0 -2px; 
 }
.page_numbers a:hover {
	color:#FF0000; 
	background:#000000;
 }
a.current {
	color:#FFFFFF; 
	background:#000000;
	cursor:default;
 }
.others { color: #FF0000 } 
-->
</style>
<!--[if IE]>
<style type="text/css">
.page_numbers  a { display:inline-block; }
.page_numbers ul li {display:inline; }
</style>
<![endif]-->
</head>
<body>

<?php
if ( empty($ftp_dir) | empty($dest_dir)) {
	die("<center>Désolé votre parametrage n'est pas correct<br>Veuillez éditer le fichier.</center> \n");	
	}
$webpage = basename($_SERVER['PHP_SELF']);
global $webpage;
$page = $_GET['page'];
?>
	
<div style="text-align: center;">
<p style="font-size: medium; font-weight: bold;"><?php echo $name; ?></p>
<FORM method="POST" action="<?php echo $PHP_SELF; ?>">
</FORM>
</div>

<?php
if(isset($_POST["action"])) {
$action = $_POST["action"];

	switch($action) {
		case "actualiser"; 
			getfiles($dest_dir, $ftp_dir);
			printfiles($dest_dir,$url);
		break;		
		}	
	}	
	else {
		printfiles($dest_dir,$url);
	}
?>

</body>
</html>
	
<?php	

function date_fichier($tab_fichier){
  $tab_fichier_date = array();
  $date_fichier = '';
  
  //On créé des clés pour chaque fichier à partir de sa dernière date enregistré
  foreach($tab_fichier AS $filename){
    if(file_exists($filename)){
      $date_fichier_formater = date("dmYHis", filemtime($filename));
      $tab_fichier_date[$date_fichier_formater] = $filename;  
    }
    else{
      //erreur
    } 
  }
  
  //On range le tableau dans l'ordre décroissant des clés
  krsort($tab_fichier_date);
  
  return $tab_fichier_date;
}

function getfiles($dest_dir, $ftp_dir) {
	global $ftp_server , $ftp_user_name , $ftp_user_pass , $ftp_root, $del, $delage, $zipfile;	
	// Création de la connexion
	$conn_id = ftp_connect($ftp_server);
	// Authentification avec nom de compte et mot de passe
	$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
	// Vérification de la connexion
	echo "<div align=\"center\"> \n";
	if ((!$conn_id) || (!$login_result)) {
		die ("Connexion ftp " . $ftp_server . " non possible ! \n");
	} else {
		echo "Connexion ftp ok!... ";	
		$dir = $ftp_dir; 
		//echo "<center>ftp dir : " . $dir . " </center> \n";
		$contents = ftp_nlist($conn_id, $dir); 
		echo "Analyse du repertoire ftp... Veuillez patienter... \n" ;
		foreach($contents as $file){ 
			$lenght = strlen($ftp_dir);
			$get_file = substr($file, $lenght);
			$ext = pathinfo($file, PATHINFO_EXTENSION);  
			// Téléchargement des fichiers dont l'extension est .dem depuis le repertoire $ftp_dir
			if ($ext == 'dem') {  
				if (!file_exists($dest_dir.$get_file)) {
					echo "<center> File get : " . $file . " </center> \n" ;
					$buff = ftp_mdtm($conn_id, $file);
					$today = MkTime(Date("h,i,s,m,d,Y"));
					$days = number_format((($today - $buff)/86400), 1);
					//echo "Fichier en téléchargement : " . $get_file . " " . date("d.m.Y H:i", $buff) . ", Match effectué il y a : " . $days . " jr(s) <br> \n" ; 
					ftp_get($conn_id, $dest_dir.$get_file, $dir.$get_file,FTP_BINARY);	
					$i = $i + 1;
					//effacement si option choisie dans le parametrage
					if ( $del == "1" ) {
						if (ftp_delete($conn_id, $file)) {
							echo "File delete: " . $file. " done<br> \n";
						} 
					}					
				}				
			}
		}
		if ($i == "") {
			echo "Aucun nouveau fichier à télécharger. \n";	
		} else {
			echo " " . $i . " nouveau(x) fichier(s) téléchargés(s). \n";	
		}		
		ftp_quit($conn_id); //deconnexion du ftp
		echo "Traitement terminé. </div> \n";
	}			
}

function printfiles($dest_dir,$url) {	
	global $limit, $webpage, $page;
	$dir = @opendir($dest_dir);
	while ($file = readdir($dir)) {
		$ext = pathinfo($dest.$file, PATHINFO_EXTENSION);
		// placement des fichiers .dem dans un tableau pour pouvoir les trier
			if ($ext == 'dem' || $ext == 'zip') { 	
				$ListFiles[$i]=$file;
		        $i++; 	
			}			
	}
	closedir($dir);	
	echo "<div align=\"center\"> \n";
	// tri par ordre decroissant - fonction rsort
    if(count($ListFiles)!=0) {
		rsort($ListFiles);
	}
	else {
		die("Il n'y a actuellement pas de fichier dans le repertoire de destination. \n");
	}
	// affiche les fichiers par ordre alphabetique decroissant dans des tables 
	$total_pages = floor(count($ListFiles)/$limit) +1 ;
	$pagination = pagination($total_pages,$page);
	if ($page == "") {
		$page = 1;
	}
	$i = (($page - 1) * $limit) ;
	echo "Nombre total de fichiers : " . count($ListFiles) . " \n";
	//echo "limit = " . $limit . ", page = " . $page . ", i = " . $i . " <br> \n";
	echo "<table width=\"90%\"> \n"  ;
	echo "<tr><td width=\"80%\"><b> Filename <b></td><td width=\"20%\" align=\"center\"><b> Filesize(Mb) <b></td></tr>  \n" ;
        
        if ( count($ListFiles) > $limit ) {
          $tableauTrier = date_fichier($ListFiles);
                  
          while ( $i < ($page * $limit) && $i < count($ListFiles)) {
            //On retourne le contenu du tableau
            foreach($tableauTrier AS $key=>$valeur){  
              echo '<tr><td width="80%"><a href="' . $url.$valeur . '">' . $valeur . '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
            }
            
            $i++;
          }
        }
        if ( count($ListFiles) <= $limit ) {
          $tableauTrier = date_fichier($ListFiles);
          
          while ( $i < count($ListFiles) ) {
              //On retourne le contenu du tableau
              foreach($tableauTrier AS $key=>$valeur){  
                echo '<tr><td width="80%"><a href="' . $url.$valeur . '">' . $valeur . '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
              }
              
              $i++;
            }        
        }
        echo "</table> \n";	
	echo "<div align=\"center\">" . $pagination . "</div> \n"; 
	echo "Free script from Jenlain - Designed & Edited by JcLoD\n";
	echo "</div> \n";
}

function pagination($total_pages,$page){
	//pagination_six
    global $webpage;
    $pagination = '<div class="page_numbers">
                    <ul>';                    
    if($total_pages!=1){    
        //the total links visible          
        $max_links=10;        
        //$max links_marker is the top of the loop
        //$h is the start        
        $max_links_marker = $max_links+1;            
        $h=1;                
        //$link_block is the block of links on the page
        //When this is an integer we need a new block of links                  
        $link_block=(($page-1)/$max_links);        
        //if the page is greater than the top of th loop and link block
        //is an integer        
        if(($page>=$max_links_marker)&&(is_int($link_block))){        
                //reset the top of the loop to a new link block        
            $max_links_marker=$page+$max_links;            
            //and set the bottom of the loop                     
            $h=$max_links_marker-$max_links;
            $prev=$h-1;                                                                    
        }        
            //if not an integer we are still within a link block        
        elseif(($page>=$max_links_marker)&&(!is_int($link_block))){            
                //round up the link block            
            $round_up=ceil($link_block);                    
            $new_top_link = $round_up*$max_links;            
                //and set the top of the loop to the top link            
            $max_links_marker=$new_top_link+1;            
                //and the bottom of the loop to the top - max links            
            $h=$max_links_marker-$max_links;
            $prev=$h-1;                            
        }        
          //if greater than total pages then set the top of the loop to
          // total_pages        
        if($max_links_marker>$total_pages){
            $max_links_marker=$total_pages+1;
        }        
            //first and prev buttons        
        if($page>'1'){
            $pagination.='<li class="current"><a href="'.$webpage.'?page=1">First</a></li>
            <li class="current"><a href="'.$webpage.'?page='.($page-1).'">Prev</a></li>';
        }        
            //provide a link to the previous block of links            
        $prev_start = $h-$max_links; 
        $prev_end = $h-1;
        if($prev_start <=1){
            $prev_start=1;
        }
        $prev_block = "Pages $prev_start to $prev_end";        
        if($page>$max_links){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.$prev.'">'.$prev_block.'</a></li>';
        }        
            //loop through the results            
        for ($i=$h;$i<$max_links_marker;$i++){
            if($i==$page){
                $pagination.= '<li><a class="current">'.$i.'</a></li>';
            }
            else{
                $pagination.= '<li><a href="'.$webpage.'?page='.$i.'">'.$i.'</a></li>';
            }
        }
            //provide a link to the next block o links        
        $next_start = $max_links_marker; 
        $next_end = $max_links_marker+$max_links;
        if($next_end >=$total_pages){
            $next_end=$total_pages;
        }
        $next_block = "Pages $next_start to $next_end";
        if($total_pages>$max_links_marker-1){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.$max_links_marker.'">'.$next_block.'</a></li>';
        }        
          //link to next and last pages               
        if(($page >="1")&&($page!=$total_pages)){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.($page+1).'">Next</a></li>
                  <li class="current"><a href="'.$webpage.'?page='.$total_pages.'">Last</a></li>';
        }
    }    
    //if one page of results    
    else{
      $pagination.='<li><a href="" class="current">1</a></li>';
    }
    $pagination.='</ul>
        </div>';    
    return($pagination);
}


?>
Je te remercie d'avance ;)

Re: Script mettre fichier dans l'ordre

par Alf?> » 31 août 2011, 23:47

Salut,

Je t'ai écris une solution pour toi, mais je ne l'ai pas testé avec des transferts FTP.

La fonction :
function date_fichier($tab_fichier){
  $tab_fichier_date = array();
  $date_fichier = '';
  
  //On créé des clés pour chaque fichier à partir de sa dernière date enregistré
  foreach($tab_fichier AS $filename){
    if(file_exists($filename)){
      $date_fichier_formater = date("dmYHis", filemtime($filename));
      $tab_fichier_date[$date_fichier_formater] = $filename;  
    }
    else{
      //erreur
    } 
  }
  
  //On range le tableau dans l'ordre décroissant des clés
  krsort($tab_fichier_date);
  
  return $tab_fichier_date;
}
Le code a mettre à jours :
        echo "<tr><td width=\"80%\"><b> Filename <b></td><td width=\"20%\" align=\"center\"><b> Filesize(Mb) <b></td></tr>  \n" ;
        
        if ( count($ListFiles) > $limit ) {
          $tableauTrier = date_fichier($ListFiles);
                  
          while ( $i < ($page * $limit) && $i < count($ListFiles)) {
            //On retourne le contenu du tableau
            foreach($tableauTrier AS $key=>$valeur){  
              echo '<tr><td width="80%"><a href="' . $url.$valeur . '">' . $valeur . '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
            }
            
            $i++;
          }
        }
        if ( count($ListFiles) <= $limit ) {
          $tableauTrier = date_fichier($ListFiles);
          
          while ( $i < count($ListFiles) ) {
              //On retourne le contenu du tableau
              foreach($tableauTrier AS $key=>$valeur){  
                echo '<tr><td width="80%"><a href="' . $url.$valeur . '">' . $valeur . '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
              }
              
              $i++;
            }        
        }
        echo "</table> \n";
Il faut savoir :
- la fonction filemtime() renvoi la date de la dernière modification du fichier, ce qui n'est pas génant dans ton cas.
- il y aurai plus simple en stockant les dates dans une base de données, puis de faire des retours dans le code d'affichage.

En espérant que ça puisse t'aider (Vive CSS :mrgreen: !!!!).

Si il te renvoi des erreurs, fais le moi savoir.

Script mettre fichier dans l'ordre

par JcLoD » 31 août 2011, 16:49

Salut a tous :) ,

Alors voila je ne m'y connais pas beaucoup en php donc j'aurais besoin de votre aide pour mon site : http://nightskill.mtxserv.fr/sourcetv.html
Mon souci c'est que le script si-dessous sert a transferer automatiquement des fichiers d'un ftp à un autre mes quand on va sur le site on voit que les fichiers ne sont pas classer par leur date de transfert, j'aurais aimer savoir s'il était possible d'ajouter quelque chose au script pour que les fichiers sur le site soit classer du moins vieux au plus vieux

Voici le script php:
<?php
// Nom du script : demolist_ftp.php
// Version : editer par JcLoD fonction not refresh
// Date : 27/9/2009                                                                                    
// Auteur : Thierry Vanneste alias jenlain 
// Email : [email protected]
// Licence : GNU GPL http://www.gnu.org/licenses/gpl.txt
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// P A R A M E T R A G E 
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
$ftp_server = "ftp.verygames.net"; // l'adresse ftp du serveur de jeu. Par exemple ftp.verygames.net
$ftp_user_name = "dedigame632"; // le username ftp par exemple server0000
$ftp_user_pass = ""; // le password ftp par exemple ********
$ftp_dir = "/servers/server3542/games/halflife_source/orangebox/cstrike/"; //le chemin vers le repertoire ftp sur le serveur de jeu où sont stockées les démos, avec un / au debut et à la fin, en general (/games/half-life/cstrike/).  
$dest_dir = "./"; //le chemin vers le repertoire sur le serveur web où seront stockées les démos evc un / au debut et à la fin. Le repertoire doit être inscriptible (chmod 777)
$url = "http://nightskill.mtxserv.fr/demos/"; // l'url vers le répertoire où seront stockées les démos avec un / au bout.
$del = "1"; // Si 1  supprime les fichiers sur le serveur ftp qui sont deja presents sur votre site web 
$limit = "12"; // Nombre de demos affichées par pages
$zipfile = "1"; // Si 1 les fichiers transférés seront compressés. (Pré-requis : php5 avec zlib)
// Pour connaitre le chemin vers la racine de votre serveur web, décommentez les deux lignes suivantes et relancez le fichier
//$root = getenv("DOCUMENT_ROOT") ;
//echo "<center>DOCUMENT_ROOT: " . $root . "</center>"; 
// Pour connaitre le repertoire ftp où sont affichées les démos, utilisez votre logiciel ftp, filezilla ou autre.
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// NE RIEN TOUCHER APRES CETTE LIGNE SI VOUS NE MAITRISEZ PAS LE CODE.
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head>
<style type="text/css">
<!--
body,td,th { 
	font-family: Arial, Helvetica, sans-serif;
	color: #FFFFFF; 
	font-size: 12px; 
}
a:link { 
	color: #FFFFFF; 
	text-decoration: none; 
}
a:visited { 
	text-decoration: underline; 
	color: #FFFFFF; 
}
a:hover { 
	text-decoration: none; 
	color: #FF0000; }
a:active { 
	text-decoration: none; 
	color: #FF0000; }
.page_numbers {
	display:table;           
	padding:0;
	margin:0 auto;
	font-family: arial, helvetica, sans-serif;
	white-space:nowrap;
	list-style-type:none;
}
* html .page_numbers {
	display:inline-block;
	width:1px;
	padding:0 2px;
 }  
.page_numbers li {
	display:table-cell;
 }
* html .page_numbers li {
	display:inline;
}
.page_numbers a {
	display:block;
	padding:0.2em 1em; 
	color:#FFFFFF; 
	text-decoration:none;
 }
* html .page_numbers a {
	display:inline-block;
	margin:0 -2px; 
 }
.page_numbers a:hover {
	color:#FF0000; 
	background:#000000;
 }
a.current {
	color:#FFFFFF; 
	background:#000000;
	cursor:default;
 }
.others { color: #FF0000 } 
-->
</style>
<!--[if IE]>
<style type="text/css">
.page_numbers  a { display:inline-block; }
.page_numbers ul li {display:inline; }
</style>
<![endif]-->
</head>
<body>

<?php
if ( empty($ftp_dir) | empty($dest_dir)) {
	die("<center>Désolé votre parametrage n'est pas correct<br>Veuillez éditer le fichier.</center> \n");	
	}
$webpage = basename($_SERVER['PHP_SELF']);
global $webpage;
$page = $_GET['page'];
?>
	
<div style="text-align: center;">
<p style="font-size: medium; font-weight: bold;"><?php echo $name; ?></p>
<FORM method="POST" action="<?php echo $PHP_SELF; ?>">
</FORM>
</div>

<?php
if(isset($_POST["action"])) {
$action = $_POST["action"];

	switch($action) {
		case "actualiser"; 
			getfiles($dest_dir, $ftp_dir);
			printfiles($dest_dir,$url);
		break;		
		}	
	}	
	else {
		printfiles($dest_dir,$url);
	}
?>

</body>
</html>
	
<?php	

function getfiles($dest_dir, $ftp_dir) {
	global $ftp_server , $ftp_user_name , $ftp_user_pass , $ftp_root, $del, $delage, $zipfile;	
	// Création de la connexion
	$conn_id = ftp_connect($ftp_server);
	// Authentification avec nom de compte et mot de passe
	$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
	// Vérification de la connexion
	echo "<div align=\"center\"> \n";
	if ((!$conn_id) || (!$login_result)) {
		die ("Connexion ftp " . $ftp_server . " non possible ! \n");
	} else {
		echo "Connexion ftp ok!... ";	
		$dir = $ftp_dir; 
		//echo "<center>ftp dir : " . $dir . " </center> \n";
		$contents = ftp_nlist($conn_id, $dir); 
		echo "Analyse du repertoire ftp... Veuillez patienter... \n" ;
		foreach($contents as $file){ 
			$lenght = strlen($ftp_dir);
			$get_file = substr($file, $lenght);
			$ext = pathinfo($file, PATHINFO_EXTENSION);  
			// Téléchargement des fichiers dont l'extension est .dem depuis le repertoire $ftp_dir
			if ($ext == 'dem') {  
				if (!file_exists($dest_dir.$get_file)) {
					echo "<center> File get : " . $file . " </center> \n" ;
					$buff = ftp_mdtm($conn_id, $file);
					$today = MkTime(Date("h,i,s,m,d,Y"));
					$days = number_format((($today - $buff)/86400), 1);
					//echo "Fichier en téléchargement : " . $get_file . " " . date("d.m.Y H:i", $buff) . ", Match effectué il y a : " . $days . " jr(s) <br> \n" ; 
					ftp_get($conn_id, $dest_dir.$get_file, $dir.$get_file,FTP_BINARY);	
					$i = $i + 1;
					//effacement si option choisie dans le parametrage
					if ( $del == "1" ) {
						if (ftp_delete($conn_id, $file)) {
							echo "File delete: " . $file. " done<br> \n";
						} 
					}					
				}				
			}
		}
		if ($i == "") {
			echo "Aucun nouveau fichier à télécharger. \n";	
		} else {
			echo " " . $i . " nouveau(x) fichier(s) téléchargés(s). \n";	
		}		
		ftp_quit($conn_id); //deconnexion du ftp
		echo "Traitement terminé. </div> \n";
	}			
}

function printfiles($dest_dir,$url) {	
	global $limit, $webpage, $page;
	$dir = @opendir($dest_dir);
	while ($file = readdir($dir)) {
		$ext = pathinfo($dest.$file, PATHINFO_EXTENSION);
		// placement des fichiers .dem dans un tableau pour pouvoir les trier
			if ($ext == 'dem' || $ext == 'zip') { 	
				$ListFiles[$i]=$file;
		        $i++; 	
			}			
	}
	closedir($dir);	
	echo "<div align=\"center\"> \n";
	// tri par ordre decroissant - fonction rsort
    if(count($ListFiles)!=0) {
		rsort($ListFiles);
	}
	else {
		die("Il n'y a actuellement pas de fichier dans le repertoire de destination. \n");
	}
	// affiche les fichiers par ordre alphabetique decroissant dans des tables 
	$total_pages = floor(count($ListFiles)/$limit) +1 ;
	$pagination = pagination($total_pages,$page);
	if ($page == "") {
		$page = 1;
	}
	$i = (($page - 1) * $limit) ;
	echo "Nombre total de fichiers : " . count($ListFiles) . " \n";
	//echo "limit = " . $limit . ", page = " . $page . ", i = " . $i . " <br> \n";
	echo "<table width=\"90%\"> \n"  ;
	echo "<tr><td width=\"80%\"><b> Filename <b></td><td width=\"20%\" align=\"center\"><b> Filesize(Mb) <b></td></tr>  \n" ;
	if ( count($ListFiles) > $limit ) {
		while ( $i < ($page * $limit) && $i < count($ListFiles)) {	
			echo '<tr><td width="80%"><a href="' . $url.$ListFiles[$i] . '">' . $ListFiles[$i]. '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";		
			$i++; 
		}
	} 
	if ( count($ListFiles) <= $limit ) {
		while ( $i < count($ListFiles) ) {
			echo '<tr><td width="80%"><a href="' . $url.$ListFiles[$i] . '">' . $ListFiles[$i]. '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";		
			$i++;
                }
	} 
	echo "</table> \n";	
	echo "<div align=\"center\">" . $pagination . "</div> \n"; 
	echo "Free script from Jenlain - Designed & Edited by JcLoD\n";
	echo "</div> \n";
}

function pagination($total_pages,$page){
	//pagination_six
    global $webpage;
    $pagination = '<div class="page_numbers">
                    <ul>';                    
    if($total_pages!=1){    
        //the total links visible          
        $max_links=10;        
        //$max links_marker is the top of the loop
        //$h is the start        
        $max_links_marker = $max_links+1;            
        $h=1;                
        //$link_block is the block of links on the page
        //When this is an integer we need a new block of links                  
        $link_block=(($page-1)/$max_links);        
        //if the page is greater than the top of th loop and link block
        //is an integer        
        if(($page>=$max_links_marker)&&(is_int($link_block))){        
                //reset the top of the loop to a new link block        
            $max_links_marker=$page+$max_links;            
            //and set the bottom of the loop                     
            $h=$max_links_marker-$max_links;
            $prev=$h-1;                                                                    
        }        
            //if not an integer we are still within a link block        
        elseif(($page>=$max_links_marker)&&(!is_int($link_block))){            
                //round up the link block            
            $round_up=ceil($link_block);                    
            $new_top_link = $round_up*$max_links;            
                //and set the top of the loop to the top link            
            $max_links_marker=$new_top_link+1;            
                //and the bottom of the loop to the top - max links            
            $h=$max_links_marker-$max_links;
            $prev=$h-1;                            
        }        
          //if greater than total pages then set the top of the loop to
          // total_pages        
        if($max_links_marker>$total_pages){
            $max_links_marker=$total_pages+1;
        }        
            //first and prev buttons        
        if($page>'1'){
            $pagination.='<li class="current"><a href="'.$webpage.'?page=1">First</a></li>
            <li class="current"><a href="'.$webpage.'?page='.($page-1).'">Prev</a></li>';
        }        
            //provide a link to the previous block of links            
        $prev_start = $h-$max_links; 
        $prev_end = $h-1;
        if($prev_start <=1){
            $prev_start=1;
        }
        $prev_block = "Pages $prev_start to $prev_end";        
        if($page>$max_links){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.$prev.'">'.$prev_block.'</a></li>';
        }        
            //loop through the results            
        for ($i=$h;$i<$max_links_marker;$i++){
            if($i==$page){
                $pagination.= '<li><a class="current">'.$i.'</a></li>';
            }
            else{
                $pagination.= '<li><a href="'.$webpage.'?page='.$i.'">'.$i.'</a></li>';
            }
        }
            //provide a link to the next block o links        
        $next_start = $max_links_marker; 
        $next_end = $max_links_marker+$max_links;
        if($next_end >=$total_pages){
            $next_end=$total_pages;
        }
        $next_block = "Pages $next_start to $next_end";
        if($total_pages>$max_links_marker-1){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.$max_links_marker.'">'.$next_block.'</a></li>';
        }        
          //link to next and last pages               
        if(($page >="1")&&($page!=$total_pages)){
            $pagination.='<li class="current"><a href="'.$webpage.'?page='.($page+1).'">Next</a></li>
                  <li class="current"><a href="'.$webpage.'?page='.$total_pages.'">Last</a></li>';
        }
    }    
    //if one page of results    
    else{
      $pagination.='<li><a href="" class="current">1</a></li>';
    }
    $pagination.='</ul>
        </div>';    
    return($pagination);
}


?>
Je vous remercie d'avance :wink:

Cordialement JcLoD