Salut
Voici une fonction pour réduire vos images à la volée 
function reduire_image($fichierimage,$nomimage,$path_thumbs,$ThumbWidth,$path_big,$GrandeWidth)
{
$extlimit = "yes";
$limitedext = array(".jpg",".png",".gif");
//On vérifie que les répertoires ont les droits d'écritures (CHMOD 777)
if (!is_writeable($path_thumbs)){
die ("Erreur: Le dossier <b>($path_thumbs)</b> n'est pas accessible");
}
if(!empty($path_big))
{
if (!is_writeable($path_big)){
die ("Erreur: Le dossier <b>($path_big)</b> n'est pas accessible");
}
}
$file_type = $fichierimage['type'];
$file_name = $fichierimage['name'];
$file_size = $fichierimage['size'];
$file_tmp = $fichierimage['tmp_name'];
if ($file_size >= 2*1024*1024)
{
echo "Le fichier de votre photo est trop gros. Elle n'a donc pas été ajoutée à votre fiche.<br /><br />";
return false;
}
if(is_uploaded_file($file_tmp)){
//On récupère l'extension de l'image
$ext = strrchr($file_name,'.');
$ext = strtolower($ext);
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
echo "L'extension de l'image sélectionnée n'est pas correcte. <br /><a href=\"javascript:history-back();\">back</a>";
exit();
}
$getExt = explode ('.', $file_name);
$file_ext = $getExt[count($getExt)-1];
//On garde le type de l'image
if($file_size){
if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
$new_img = imagecreatefromjpeg($file_tmp);
}elseif($file_type == "image/x-png" || $file_type == "image/png"){
$new_img = imagecreatefrompng($file_tmp);
}elseif($file_type == "image/gif"){
$new_img = imagecreatefromgif($file_tmp);
}
// On redimensionne la thumbnail
list($width, $height) = getimagesize($file_tmp);
if ($width >= $height && $width > $ThumbWidth){
$newwidthvignette = $ThumbWidth;
$newheightvignette = $height * $ThumbWidth / $width;
}
else if ($height > $width && $height > $ThumbWidth){
$newheightvignette = $ThumbWidth;
$newwidthvignette = $width * $ThumbWidth / $height;
}
else {
$newheightvignette = $height;
$newwidthvignette = $width;
}
$resized_img = imagecreatetruecolor($newwidthvignette,$newheightvignette);
imagecopyresampled($resized_img, $new_img, 0, 0, 0, 0, $newwidthvignette, $newheightvignette, $width, $height);
//on enregistre l'image
if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
Imagejpeg ($resized_img,$path_thumbs."/".$nomimage.".jpg");
}elseif($file_type == "image/x-png" || $file_type == "image/png"){
Imagepng ($resized_img,$path_thumbs."/".$nomimage.".png");
}elseif($file_type == "image/gif"){
Imagegif ($resized_img,$path_thumbs."/".$nomimage.".gif");
}
ImageDestroy ($resized_img);
ImageDestroy ($new_img);
if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
$new_img = imagecreatefromjpeg($file_tmp);
}elseif($file_type == "image/x-png" || $file_type == "image/png"){
$new_img = imagecreatefrompng($file_tmp);
}elseif($file_type == "image/gif"){
$new_img = imagecreatefromgif($file_tmp);
}
if(!empty($path_big))
{
if ($width >= $height && $width > $GrandeWidth){
$newwidthgrande = $GrandeWidth;
$newheightgrande = $height * $GrandeWidth / $width;
}
else if ($height > $width && $height > $GrandeWidth){
$newheightgrande = $GrandeWidth;
$newwidthgrande = $width * $GrandeWidth / $height;
}
else {
$newheightgrande = $height;
$newwidthgrande = $width;
}
$resized_img = imagecreatetruecolor($newwidthgrande,$newheightgrande);
imagecopyresampled($resized_img, $new_img, 0, 0, 0, 0, $newwidthgrande, $newheightgrande, $width, $height);
//on enregistre l'image
if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
Imagejpeg ($resized_img,$path_big."/".$nomimage.".jpg");
}elseif($file_type == "image/x-png" || $file_type == "image/png"){
Imagepng ($resized_img,$path_big."/".$nomimage.".png");
}elseif($file_type == "image/gif"){
Imagegif ($resized_img,$path_big."/".$nomimage.".gif");
}
ImageDestroy ($resized_img);
ImageDestroy ($new_img);
}
}
}
if($file_ext=="jpg" OR $file_ext=="JPG")
{
//return $file_ext;
$file_ext="jpg";
return $file_ext;
}elseif($file_ext=="png" OR $file_ext=="PNG")
{
$file_ext="png";
return $file_ext;
}elseif($file_ext=="gif" OR $file_ext=="GIF")
{
$file_ext="gif";
return $file_ext;
}
}à appeler comme ça :
$extension=reduire_image($_FILES['image'],"nomimage","image/petite","100","image/grande","500");
et la fonction vous retourne l'extension de l'image
Hors ligne