2 votes

Télécharger l'image avec la vignette et l'image originale

J'utilise ce script pour télécharger des images sur mon site web depuis un an maintenant et j'ai finalement réalisé que des changements doivent être effectués. J'ai cherché partout sur Internet mais je n'ai pas encore trouvé de solution adéquate, alors je suis venu vous voir.

  • Ce script est en train de créer et de déplacer une image miniature dans le dossier '/images' avec les proportions 111x111.
  • Je veux qu'il télécharge également la photo originale, comment faire ?

    if(isset($_POST['submit'])) {
    if (($_FILES["image"]["type"] == "image/jpeg" || $_FILES["image"]["type"] == "image/pjpeg" || $_FILES["image"]["type"] == "image/gif" || $_FILES["image"]["type"] == "image/x-png") && ($_FILES["image"]["size"] < 4000000))
    $current_img=$_FILES['image']['name'];
    $extension = substr(strrchr($current_img, '.'), 1);
    date_default_timezone_set("Europe/Stockholm");
    $time = date("fYhis");
    $new_image = uniqid() . $time;
    $destination   = "images/".$new_image . "-thumb" . "." . $extension;
    $action = move_uploaded_file($_FILES['image']['tmp_name'], $destination);
    
    $max_upload_width = 111;
    $max_upload_height = 111;
    if($_FILES["image"]["type"] == "image/jpeg" || $_FILES["image"]["type"] == "image/pjpeg"){
        $image_source = imagecreatefromjpeg($destination) ;
    } 
    if($_FILES["image"]["type"] == "image/gif"){    
        $image_source = imagecreatefromgif($_FILES["image"]["tmp_name"]);
    }
    if($_FILES["image"]["type"] == "image/bmp"){    
        $image_source = imagecreatefromwbmp($_FILES["image"]["tmp_name"]);
    }
    if($_FILES["image"]["type"] == "image/x-png"){
        $image_source = imagecreatefrompng($_FILES["image"]["tmp_name"]);
    }
    
    imagejpeg($image_source,$destination,100);
    chmod($destination,0644);
    
    list($image_width, $image_height) = getimagesize($destination);
    
    if($image_width>$max_upload_width || $image_height >$max_upload_height){
        $proportions = 1;
    
        if($image_width>$image_height){
            $new_width  = $max_upload_width;
            $new_height = round($max_upload_width/$proportions);
        }       
        else{
            $new_height = $max_upload_height;
            $new_width  = round($max_upload_height*$proportions);
        }       
    
        $new_image = imagecreatetruecolor($new_width , $new_height);
        $image_source = imagecreatefromjpeg($destination);
    
        imagecopyresampled($new_image, $image_source, 0, 0, 0, 0, $new_width, $new_height, $image_width, $image_height);
        imagejpeg($new_image, $destination, 100); // save
        imagedestroy($new_image);
    }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X