Upload et redimensionner une image: resultat super pale !

Mostrapotski
Invité n'ayant pas de compte PHPfrance

19 juin 2007, 18:13

Bonjour à tous.
Pour un site sur un 60gp de chez OVH, j'ai besoin d'uploader, de renomer, et de redimensionner une image.

Ce script n'est pas (mais pas du tout !) securisé car il est dans une zone d'administration qui elle, est deja securisée.

Alors voila le probleme, lorsque j'upload mon image, mon script en fait une miniature, et cette miniature a un probleme avec les couleurs...

Un exemple:
Image < original
Image < apres avoir redimensionné

C'est la copie qui est a l'origine du probleme, mon upload, lui ne change en rien la couleur, forcement. Voici le code
		$img = $_FILES['photo3']['tmp_name'];
		chmod("../images/maisons/".$idaedit."/", 0777);
		$nom = "../images/maisons/".$idaedit."/3_.jpg";
		if(move_uploaded_file($img,$nom)) {
			$image_origine = imagecreatefromjpeg("../images/maisons/".$idaedit."/3_.jpg");
			$largeur_origine = imagesx($image_origine);
			$hauteur_origine = imagesy($image_origine);
			$image_finale = imagecreate(590, 450);
			imagecopyresized($image_finale, $image_origine, 0, 0, 0, 0, 590, 450, $largeur_origine, $hauteur_origine);
			imagejpeg($image_finale, "../images/maisons/".$idaedit."/3.jpg",85); 
			unlink("../images/maisons/".$idaedit."/3_.jpg");
		}
		chmod("../images/maisons/".$idaedit."/", 0755);
Si quelqu'un à une idée... merci :D

Eléphanteau du PHP | 12 Messages

20 juin 2007, 06:48

j'ai besoin d'uploader, de renomer, et de redimensionner une image.
Plutôt que de redimensionner l'image à l'aide d'un script, pourquoi ne pas la redimensionner en utilisant un logiciel approprié, comme GIMP et 'uploader' la nouvelle copie?
A. ANDRE
------------------------------------------------------------------------
Long et caillouteux, est le chemin qui mène à la connaissance!

ViPHP
ViPHP | 2144 Messages

20 juin 2007, 11:30

j'ai besoin d'uploader, de renomer, et de redimensionner une image.
Plutôt que de redimensionner l'image à l'aide d'un script, pourquoi ne pas la redimensionner en utilisant un logiciel approprié, comme GIMP et 'uploader' la nouvelle copie?
L'avantage est justement de le faire de manière automatique et donc de réduire les manipulatios, de plus si le script est accessible à différentes personnes, cela permet d'être sûr que toutes les images soient à la bonne taille.

Pour le problème, fais un essai avec imagecopyresampled()
le lien vers la doc: http://be.php.net/manual/fr/function.im ... ampled.php

mostrapotski
Invité n'ayant pas de compte PHPfrance

20 juin 2007, 14:10

Merci à vous deux pour vos reponses...
L'interêt de faire ca avec php, c'est de ne pas contraindre les utilisateurs du site à utiliser un logiciel (j'imagine deja la reponse à propos de gimp "oh ya trop de boutons") !

iclo, je n'ai pas essayé ta solution, car j'ai trouvé d'un venait le probleme en fait:
$image_finale = imagecreatetruecolor(590, 450);
plutot que
$image_finale = imagecreate(590, 450);
Voila, c'était tout bete !