Upload + affichage et suppression du contenu d'un dossier (images)

Contenu du snippet

Salut à tous,
Voici un script très simple qui sert à uploader une image et d'afficher le contenu d'un dossier (selon la date du modification ) et la possibilité de supprimer les images.
C'est mon premier script , alors si vous avez des remarques n'hésitez pas à les poster

Source / Exemple :


<?php
 //parametres
 $dir="images";//le repertoire

 $exten=array("jpg","png","gif","bmp","jpeg");//les extensien autorisés
 $wid="70";//le width du miniature
 $hei="70";//le height du miniature
 $nbr_ligne=5;//nombre des miniatures par ligne
 $l_supp="http://editions.philihp.net/edit/images/supprimer.png";//lien de l'images de suppression
 $couleur="black";//couleur du bordure

 if(isset($_GET['delete']))
 	if(strpos($_GET['delete'],'/')===false)
 		if(file_exists($dir.'/'.$_GET['delete']))
 			unlink($dir.'/'.$_GET['delete']);

 //affichage du contenu du dossier
 if(isset($_GET['aff']))
 {
	 echo '<center><a href="parcourir.php">Uploader une image</a></center><br>';
	 $dossier=opendir($dir);
	 $dd=array();
	 $i=0;
	 while (false !== ($file = readdir($dossier)))
	 {
		 $ff=explode(".",$file);
		 $ff=$ff[sizeof($ff)-1];
		 if(in_array($ff,$exten))
		 {
		 	$dd[$i]= date ("d F Y H:i:s.",filectime($dir."/".$file))."/%/".$file;
			 $i++;
		 }
	
	 }
	 rsort($dd);
	 echo '<table width="90%" align="center">';
	 for($j=0;$j<sizeof($dd);$j++)
	 {
	 	if($j==0)
	 	echo'<tr align="center">';
	 	if($j!=0&&$j%$nbr_ligne==0)
	 		echo'</tr><tr align="center">';
	 	$lien=explode("/%/",$dd[$j]);
	 	echo'<td style="border:solid thin '.$couleur.'" align="center"><a href="'.$dir."/".$lien[1].'"><img src="'.$dir."/".$lien[1].'" width="'.$wid.'" height="'.$hei.'" border="0"><br><br><a href="#" onclick="supp_im(\''.$lien[1].'\')"><img src="'.$l_supp.'" border="0"></td>';
	 }
	 echo '</tr></table>';
	 }

 else
 {
 //uploader une image

 	echo '<center><a href="parcourir.php?aff">Afficher les images</a></center><br>';
 ?>

 <form name="uplo" action="parcourir.php" method="post" enctype="multipart/form-data">
 <table width="60%" align="center"><tr align="center"><td width="10%">File:</td><td width="70%"><input type="file" name="fichier"/></td><td width="20%"><input type="submit" value="Envoyer" name="upload"/></td></table>
 </form>

 <?php
 if( isset($_POST['upload']))
 {
	 $type_file = $_FILES['fichier']['type'];
	
	
	 if( !strstr($type_file, $exten[0]) && !strstr($type_file, $exten[1]) && !strstr($type_file, $exten[2]) && !strstr($type_file, $exten[3]) && !strstr($type_file, $exten[4]) )
	 {
		 exit("le type du fichier n 'est pas valide");
	 }
	
	 $tmp_file = $_FILES['fichier']['tmp_name'];
	
	 if( !is_uploaded_file($tmp_file) )
	 {
	 	exit("Le fichier est introuvable");
	 }
	 $name_file = $_FILES['fichier']['name'];
	
	 if( !move_uploaded_file($tmp_file, $dir ."/". $name_file) )
	 {
	 	exit("Impossible de copier le fichier dans $dir");
	 }
	 echo '<center><img src='.$dir ."/". $name_file.'><br><br><input type="text" value="http://'.getenv("HTTP_HOST").'/'.$dir ."/". $name_file.'" style="width:400"></center>';
	
	
	
	 }
}
?>
<script language="javascript">
function supp_im(a)
{
	if(confirm("Etes vous sur de supprimer cette image")==true)
	top.document.location="parcourir.php?aff&delete="+a;
}
</script>

Conclusion :


j'espère que ce bout de code va être utile pour certains de vous

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.