[RESOLU] renommé upload

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 : [RESOLU] renommé upload

renommé upload

par pacphil » 30 déc. 2013, 14:56

bonjour je recherche à renommé mon fichier par une chaîne aléatoire au chargement de ma photo ou image , le soucis je trouve pas la solutions une aide serais la bienvenu
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
.delelte {
	background-image:url(design/corbeille.gif);
	position:relative;
	border:none;
	width: 18px; /* largeur à spécifier */
	height: 18px; /* longueur à spécifier */
	cursor: pointer;
	right:20px;
	top:-5px;
}
</style>
</head>
<body>
<fieldset>
<legend>Téléchargement de vos images</legend>
<form enctype='multipart/form-data' name='frmupload' action='' method='POST'>
<input type="hidden" name="MAX_FILE_SIZE" value="524288" />
<input name='filename' type='file'>
<input type='submit' value='Submit' name='submit'>
</form>
</fieldset>
<?PHP
if(!isset($_SESSION)){
session_start();
} 
include_once("require/config1.php");
include_once("function.php");

// Génère un code aléatoire de 5 caractères pour charques images
$chaine= code_aleatoire(); 
function code_aleatoire() 
{ 
	$alphabet    = 'abcdefghijklmnopqrstuvwxyz'; 
	$alphabet   .= '1234567890'; 
	$chaine      = ''; 
	for($i=0;$i < 5;$i++) 
	{ 
        $chaine.= substr($alphabet,rand()%(strlen($alphabet)),1); 
	} 
	return $chaine; 
}

define('TARGET', './image_annonce/');

if(isset($_POST['submit'])){
	
	
if(is_uploaded_file($_FILES['filename']['tmp_name'])){
	
	
if( !is_dir(TARGET) ) {
if( !mkdir(TARGET, 0755) ) {
exit('Erreur : le répertoire cible ne peut-être créé ! Vérifiez que vous diposiez des droits suffisants pour le faire ou créez le manuellement !');
}
} 
	$maxsize=$_POST['MAX_FILE_SIZE'];		
	$size=$_FILES['filename']['size'];
 
	$imgdetails = getimagesize($_FILES['filename']['tmp_name']);
	$mime_type = $imgdetails['mime']; 
 

	if(($mime_type=='image/jpeg')||($mime_type=='image/JPG')||($mime_type=='image/png')){
	  
	  if($size<$maxsize){
	    $filename=$_FILES['filename']['name'];
		// On renomme le fichier majuscule et minuscule 
		$filename = strtolower($filename);
		//Insert le code aléatoire pour éviter les doublons
		$filename =  $chaine."_".$filename;	
	    // Si c'est OK, on teste l'upload
              if(move_uploaded_file($_FILES['filename']['tmp_name'], TARGET.$filename)){
				  //Controle des doublons dans la base de donnée 
                  $controle_im = $connection->prepare('SELECT gal FROM im_annonce WHERE gal=:gal');   
                  $controle_im->execute(array('gal'=> $filename));
                  $nb_resultats_recherche_im=$controle_im->fetch();
				   /*si il n'y a pas de resultat*/ 
                  if(!$nb_resultats_recherche_im){
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		         $im_annonce=array(':id_gal'=> $_SESSION['ref'], 
				                   ':gal'=> $filename);
 
                 $values_info= join(', ',array_keys($im_annonce));
                 $req_im_annonce =$connection->prepare( 'INSERT INTO im_annonce ('.str_replace(':','',$values_info).') VALUES('.$values_info.')' );
                 $req_im_annonce->execute($im_annonce);
				 }else{
				 $message ="L'image est en doublons veulliez renomé l'image!!";
                 }
			  }
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////