par
fabrice88250 » 24 sept. 2009, 09:56
bonjour et merci pour vos réponses.
j'ai essayé d'adapté le code pour redimenssionner l'image apres l'upload mais sa fonctionne pas. l'image garde sa taille d'origine. pourquoi ?
//ON TRAITE LA PARTIE PHOTO REF
$nomOrigine = $_FILES['photoref']['name'];
$elementsChemin = pathinfo($nomOrigine);
$extensionFichier = $elementsChemin['extension'];
$extensionsAutorisees = array("jpeg", "jpg", "gif", "png", "JPG");
if (!(in_array($extensionFichier, $extensionsAutorisees)))
{
echo "<div class='erreur'>Le fichier Référence photo n'a pas l'extension attendue</div>";
}
else
{
// Copie dans le repertoire du script avec un nom
// incluant l'heure a la seconde pres
$repertoireDestination = "../../images/galerie/";
$nomDestination = $nomOrigine."fichier_du_".date("Ymd").".".$extensionFichier;
if (move_uploaded_file($_FILES["photoref"]["tmp_name"], $repertoireDestination.$nomDestination))
{
$file = $nomDestination ; # L'emplacement de l'image à redimensionner. L'image peut être de type jpeg, gif ou png
$x = 800;
$y = 600; # Taille en pixel de l'image redimensionnée
$size = getimagesize($file);
if ( $size) {
echo 'Image en cours de redimensionnement...
';
if ($size['mime']=='image/jpeg' ) {
$img_big = imagecreatefromjpeg($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagejpeg($img_mini,$file );
}
elseif ($size['mime']=='image/png' ) {
$img_big = imagecreatefrompng($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagepng($img_mini,$file );
}
elseif ($size['mime']=='image/gif' ) {
$img_big = imagecreatefromgif($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagegif($img_mini,$file );
}
echo 'Image redimensionnée !
';
}
echo "La photo est bien enregistrée <br/>";
}
else
{
echo "Le fichier n'a pas été uploadé (trop gros ?) ou ".
"Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
}
bonjour et merci pour vos réponses.
j'ai essayé d'adapté le code pour redimenssionner l'image apres l'upload mais sa fonctionne pas. l'image garde sa taille d'origine. pourquoi ?
[php]//ON TRAITE LA PARTIE PHOTO REF
$nomOrigine = $_FILES['photoref']['name'];
$elementsChemin = pathinfo($nomOrigine);
$extensionFichier = $elementsChemin['extension'];
$extensionsAutorisees = array("jpeg", "jpg", "gif", "png", "JPG");
if (!(in_array($extensionFichier, $extensionsAutorisees)))
{
echo "<div class='erreur'>Le fichier Référence photo n'a pas l'extension attendue</div>";
}
else
{
// Copie dans le repertoire du script avec un nom
// incluant l'heure a la seconde pres
$repertoireDestination = "../../images/galerie/";
$nomDestination = $nomOrigine."fichier_du_".date("Ymd").".".$extensionFichier;
if (move_uploaded_file($_FILES["photoref"]["tmp_name"], $repertoireDestination.$nomDestination))
{
$file = $nomDestination ; # L'emplacement de l'image à redimensionner. L'image peut être de type jpeg, gif ou png
$x = 800;
$y = 600; # Taille en pixel de l'image redimensionnée
$size = getimagesize($file);
if ( $size) {
echo 'Image en cours de redimensionnement...
';
if ($size['mime']=='image/jpeg' ) {
$img_big = imagecreatefromjpeg($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagejpeg($img_mini,$file );
}
elseif ($size['mime']=='image/png' ) {
$img_big = imagecreatefrompng($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagepng($img_mini,$file );
}
elseif ($size['mime']=='image/gif' ) {
$img_big = imagecreatefromgif($file); # On ouvre l'image d'origine
$img_new = imagecreate($x, $y);
# création de la miniature
$img_mini = imagecreatetruecolor($x, $y)
or $img_mini = imagecreate($x, $y);
// copie de l'image, avec le redimensionnement.
imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]);
imagegif($img_mini,$file );
}
echo 'Image redimensionnée !
';
}
echo "La photo est bien enregistrée <br/>";
}
else
{
echo "Le fichier n'a pas été uploadé (trop gros ?) ou ".
"Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
}
[/php]