<?php
|
/*---------------------------------------------------------------*/
|
/*
|
Titre : Visionneuse sur 4 colonnes avec suppression des fichiers
|
|
URL : https://phpsources.net/code_s.php?id=250
|
Date édition : 27 Fév 2007
|
Date mise à jour : 21 Aout 2019
|
Rapport de la maj:
|
- fonctionnement du code vérifié
|
- correction du code
|
*/
|
/*---------------------------------------------------------------*/
|
|
$nom_repertoire = './';
|
$subfolders = 1; // 1 ou 0 : Liste les images des sous rep
|
|
/*************************************************/
|
/*************************************************/
|
|
/* Fonction de listage des fichiers */
|
// $nom_repertoire: répertoire contenant les images
|
// $tab_images: tableau contenant les liens relatifs des images
|
// $i: indice de départ
|
// $sunfolders: Si 1, listage des sous-répertoires
|
function lister($nom_repertoire, &$tab_image, &$i, $subfolders)
|
{
|
// si $nom_repertoire ne se termine pas par /
|
if(substr($nom_repertoire, -1) != '/')
|
$nom_repertoire .= '/';
|
|
// ouverture du dossier
|
$pointeur = @opendir($nom_repertoire);
|
if(!$pointeur)
|
return;
|
|
// parcourt les fichiers
|
while ($fichier = readdir($pointeur))
|
{
|
if($fichier == '.' || $fichier == '..')
|
continue;
|
|
// s'il s'agit d'un dossier
|
if(is_dir($nom_repertoire . $fichier))
|
{
|
// si on doit liste les sous-répertoires
|
if($subfolders)
|
// appel de la fonction (récursivité)
|
lister($nom_repertoire . $fichier . '/', $tab_image, $i, $subfolders);
|
}
|
else
|
{
|
// récupération de l'extension
|
$ext = strtolower(substr($fichier, -4));
|
if ($ext == '.gif' || $ext == '.jpg' || $ext == '.png' || $ext == 'jpeg')
|
// ajout du fichier dans le tableau
|
$tab_image[$i++] = $nom_repertoire . $fichier;
|
}
|
}
|
|
//on ferme le répertoire
|
@closedir($pointeur);
|
}
|
|
/* Récupération des variables */
|
$delete = isset($_GET['delete']) ? $_GET['delete'] : '';
|
$path = isset($_GET['path']) ? $_GET['path'] : '';
|
|
if(!is_dir($nom_repertoire))
|
{
|
echo 'Le répertoire n\'existe pas';
|
exit;
|
}
|
|
|
// suppression d'images
|
if (!empty($delete))
|
{
|
if (file_exists($path))
|
{
|
if(unlink($path))
|
echo "Le fichier $path a été supprimé avec succès";
|
else
|
echo "Erreur lors de la suppression du fichier $path";
|
}
|
else
|
echo "Le fichier $path n'existe pas";
|
|
echo '<br><br>';
|
}
|
|
//affichage de l'entête du tableau
|
echo '
|
<table border="1" align="center">
|
<tr align="center" bgcolor="999999">
|
<td align="center">Image</td>
|
<td>Supprimer</td>
|
<td align="center">Nom de l\'image</td>
|
<td align="center">Image</td>
|
<td>Supprimer</td>
|
<td align="center">Nom de l\'image</td>
|
<td align="center">Image</td>
|
<td>Supprimer</td>
|
<td align="center">Nom de l\'image</td>
|
<td align="center">Image</td>
|
<td>Supprimer</td>
|
<td align="center">Nom de l\'image</td>
|
</tr>';
|
|
//ouvre le repertoire
|
$pointeur = @opendir($nom_repertoire);
|
if(!$pointeur)
|
{
|
echo 'Erreur lors de l\'ouverture du répartoire';
|
exit;
|
}
|
|
$i = 0;
|
$tab_image = array();
|
lister($nom_repertoire, $tab_image, $i, $subfolders);
|
|
// on trie le tableau par ordre alphabétique
|
array_multisort($tab_image, SORT_ASC);
|
|
// affichage des images (en 60 * 60 ici)
|
// affichage des photos sur 2 colonnes
|
$j = 0;
|
while ( $j < $i)
|
{
|
if($j % 4 == 0)
|
echo "\r\n\r\n\t<tr align=\"center\">";
|
|
// image1
|
$path = $tab_image[$j]; // chemin de l'image1
|
$image = '<img src="' . $path . '" width="80" height="80" border="0">';
|
$nom = $tab_image[$j]; // nom de l'image1
|
$infos_image = @getImageSize($path); // info sur ladimension de l'image1
|
|
//dimension fenetre zoom image1
|
$typ1 = $infos_image[0] + 40;
|
$typ2 = $infos_image[1] + 40;
|
|
// affichage de l'image
|
echo "\r\n\r\n\t\t<td bgcolor=\"#111111\">
|
<a href=\"#\" onClick=\"window.open('$path','new','width=$typ1, height=$typ2,
|
toolbar=no, location=no,directories=no,
|
status=no, menubar=no,scrollbars=yes,
|
copyhistory=no, resizable=yes')\">$image</a></td>";
|
|
// affiche le lien supprimer
|
echo "\r\n\r<td><a href=\"".$_SERVER["PHP_SELF"].
|
"?delete=1&path=$path&nom=$nom\"
|
onClick=\"if (confirm('Etes-vous sà»r de vouloir supp cette image ?') == true)
|
return true; else return false; \">Supprimer</a></td>";
|
|
// Affiche le nom de l'image & taille
|
echo "\n\t<td>$tab_image[$j]<br /> $infos_image[0]*$infos_image[1]</td>";
|
|
|
// image1
|
$path = $tab_image[$j+1]; // chemin de l'image1
|
$image = '<img src="' . $path . '" width="80" height="80" border="0">';
|
$nom = $tab_image[$j+1]; // nom de l'image1
|
$infos_image = @getImageSize($path); // info sur ladimension de l'image1
|
|
//dimension fenetre zoom image1
|
$typ1 = $infos_image[0] + 40;
|
$typ2 = $infos_image[1] + 40;
|
|
// affichage de l'image
|
echo "\r\n\r\n\t\t<td bgcolor=\"#111111\">
|
<a href=\"#\" onClick=\"window.open('$path', 'new', 'width=$typ1, height=$typ2,
|
toolbar=no, location=no,directories=no,
|
status=no, menubar=no,scrollbars=yes,
|
copyhistory=no, resizable=yes')\">$image</a></td>";
|
|
// affiche le lien supprimer
|
echo "\n\t\t<td><a href=\"".$_SERVER["PHP_SELF"].
|
"?delete=1&path=$path&nom=$nom\"
|
onClick=\"if (confirm('Etes-vous sà»r de vouloir supp cette image ?') == true)
|
return true; else return false; \">Supprimer</a></td>";
|
|
// Affiche le nom de l'image & taille
|
echo "\r\n\r\n\t\t<td>$path<br /> $infos_image[0]*$infos_image[1]</td>";
|
$j++;
|
$j++;
|
|
if($j % 2 != 0)
|
echo "\r\n\t</tr>";
|
}
|
|
echo "\r\n</table>";
|
?>
|
|
|
Carbone
10 Juil 2009 à 15:08et modifier la ligne 150 en
$infos_image = @getImageSize($path); // info sur ladimension de l'image1
Carbone
10 Juil 2009 à 15:05il faut creer un dossier " images "
mai apres j'ai ces erreur :
Notice: Undefined offset: 11 in C:\wamp\www\dossier-a-tester\archive-250-code-source-PHP-phpsources\scripts250-PHP.php on line 173
Notice: Undefined offset: 11 in C:\wamp\www\dossier-a-tester\archive-250-code-source-PHP-phpsources\scripts250-PHP.php on line 175