Bonjour,

Je ne peus utiliser une fonction GD dans mon admin pour redimensionné une image à cause de l'erreur ci-dessus.

pourtant il est possible à mes utilisateurs d'up sur mon serveur l'image source qui doit être redimensionné et tous les dossiers sont en 777

voici le code de la fonction que j'utilise

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// recuperation Id
$id = 'idutilisateur';
 
function redim_affiche($im_src,$im_dest)
{
 
    	$size = getimagesize($im_src); // Recuperation de la taille de l'image source		    	
	$src_w = $size[0]; // Largeur de l'image source				
	$src_h = $size[1]; // Hauteur de l'image source
 
	$pourcent = ((19.6 * 100) / $src_w) / 100; // Calcul du pourcentage de reduction de la largeur et de la hauteur pour 160 px de largeur
 
	$dst_w = floor($src_w*$pourcent); // Largeur de l'image de destination
	$dst_h = floor($src_h*$pourcent); // Hauteur de l'image de destination
	$dst_im = imagecreatetruecolor($dst_w,$dst_h); // Retourne une image noire
 
	$ext = strrchr($im_src, '.');
 
	if($ext == '.jpg' || $ext == '.jpeg')
		$src_im = imagecreatefromjpeg($im_src); // Retourne un identifiant d'image représentant une image obtenue à partir de l'image source
	elseif ($ext == '.gif')
		$src_im = imagecreatefromgif($im_src);
	elseif ($ext == '.png')
		$src_im =imagecreatefrompng($im_src);
 
imagecopyresampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h); // Copie, Redimentionne et rééchantillonne l'image source vers l'image destination
 
 
	imagegif($dst_im, $im_dest); // créer une nouvelle image Png 
 
	if($ext == '.jpg' || $ext == '.jpeg'){
			$new_im_dest = str_replace('.jpg','.gif',$im_dest); // Renomme l'extention en .GIF
			rename($im_dest, $new_im_dest);
		}elseif ($ext == '.png'){
			$new_im_dest = str_replace('.png','.gif',$im_dest); // Renomme l'extention en .GIF
			rename($im_dest, $new_im_dest);
		}elseif ($ext == '.gif'){
			$new_im_dest = $im_dest;
		}
 
	imagedestroy($dst_im); // Libère toute la mémoire associée à l'image image
	imagedestroy($src_im); // libère toute la mémoire associée à l'image image		
}
// fin function créa
 
$original = '../../contrib/';
$final = '../../tag/';
redim_affiche($original.$donnees['fichier'] , $final.$donnees['fichier']);