par
Justone » 12 mai 2005, 15:07
je te renvoi tout le code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
// recurse_dir($dir) liste tous les fichiers du dossier (et des sous-dossiers) $dir
function recurse_dir($dir)
{
global $i, $file_list;
if ($dp = opendir($dir))
{
while ($file = readdir($dp))
{
if (($file != ".") && ($file != ".."))
{
$tmp = $dir."/".$file;
if (is_dir($tmp))
recurse_dir($tmp, $file) ;
if (is_file($tmp))
{
$file_list[$i] = $tmp;
$i++;
}
}
}
return $file_list;
}
}
//Cette fonction extrait le chemin du serveur du chemin du fichier
// PRE : le fichier est dans l'arborescence du serveur
// POST : retourn une chaine du type "dossier/dossier/fichier.ext"
function NomSurServeur($cheminServeur, $cheminFichier)
{
$a_racine = explode("/", $cheminServeur);
$i_profServeur = count($a_racine);
$a_fichier = explode("/", $cheminFichier);
$i_profFichier = count($a_fichier);
$index = 0;
for($i = $i_profServeur; $i < $i_profFichier; $i++)
{
$a_result[$index] = $a_fichier[$i];
$index++;
}
return (implode($a_result, "/"));
}
function taDateToTimestamp($date)
{
$timestamp = -1;
list($annee, $mois, $jour) = sscanf($date, "%d-%d-%d"); // exemple : 2004-12-23
// un petit test pour verifier que la date est bonne
if (checkdate($mois,$jour,$annee))
{
// la date est bonne
// creation de la date avec mktime
$timestamp = mktime(0,0,0,$mois, $jour, $annee);
}
else
{
$timestamp=-1;
}
return $timestamp;
}
$timestamp = taDateToTimestamp('$date_derniere_modif');
$a_racine = explode("/", $_POST['folder']);
$i_profondeur = count($a_racine);
$liste_fichier = recurse_dir($_POST['folder']);
print_r ($liste_fichier);
for($compt = 0; $compt < count($liste_fichier); $compt++)
{
if($liste_fichier[$compt]!='.' && $liste_fichier[$compt] !='..' && filemtime($liste_fichier[$compt])>$timestamp)
{
$a_fichier = explode("/", $liste_fichier[$compt]);
$i_index = count($a_fichier) - 1;
echo "<a href='/EDC/".NomSurServeur($_SERVER['DOCUMENT_ROOT'], $liste_fichier[$compt])."'target=\"_blank\">".$a_fichier[$i_index]."</a> a été modifié le : " . date ("F d Y H:i:s.", filemtime($liste_fichier[$compt])); echo '<br>';
}
}
?>
</div>
</body>
</html>
je te renvoi tout le code
[php]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
// recurse_dir($dir) liste tous les fichiers du dossier (et des sous-dossiers) $dir
function recurse_dir($dir)
{
global $i, $file_list;
if ($dp = opendir($dir))
{
while ($file = readdir($dp))
{
if (($file != ".") && ($file != ".."))
{
$tmp = $dir."/".$file;
if (is_dir($tmp))
recurse_dir($tmp, $file) ;
if (is_file($tmp))
{
$file_list[$i] = $tmp;
$i++;
}
}
}
return $file_list;
}
}
//Cette fonction extrait le chemin du serveur du chemin du fichier
// PRE : le fichier est dans l'arborescence du serveur
// POST : retourn une chaine du type "dossier/dossier/fichier.ext"
function NomSurServeur($cheminServeur, $cheminFichier)
{
$a_racine = explode("/", $cheminServeur);
$i_profServeur = count($a_racine);
$a_fichier = explode("/", $cheminFichier);
$i_profFichier = count($a_fichier);
$index = 0;
for($i = $i_profServeur; $i < $i_profFichier; $i++)
{
$a_result[$index] = $a_fichier[$i];
$index++;
}
return (implode($a_result, "/"));
}
function taDateToTimestamp($date)
{
$timestamp = -1;
list($annee, $mois, $jour) = sscanf($date, "%d-%d-%d"); // exemple : 2004-12-23
// un petit test pour verifier que la date est bonne
if (checkdate($mois,$jour,$annee))
{
// la date est bonne
// creation de la date avec mktime
$timestamp = mktime(0,0,0,$mois, $jour, $annee);
}
else
{
$timestamp=-1;
}
return $timestamp;
}
$timestamp = taDateToTimestamp('$date_derniere_modif');
$a_racine = explode("/", $_POST['folder']);
$i_profondeur = count($a_racine);
$liste_fichier = recurse_dir($_POST['folder']);
print_r ($liste_fichier);
for($compt = 0; $compt < count($liste_fichier); $compt++)
{
if($liste_fichier[$compt]!='.' && $liste_fichier[$compt] !='..' && filemtime($liste_fichier[$compt])>$timestamp)
{
$a_fichier = explode("/", $liste_fichier[$compt]);
$i_index = count($a_fichier) - 1;
echo "<a href='/EDC/".NomSurServeur($_SERVER['DOCUMENT_ROOT'], $liste_fichier[$compt])."'target=\"_blank\">".$a_fichier[$i_index]."</a> a été modifié le : " . date ("F d Y H:i:s.", filemtime($liste_fichier[$compt])); echo '<br>';
}
}
?>
</div>
</body>
</html>
[/php]