Visualizzazione dei risultati da 1 a 3 su 3

Discussione: errore upload

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    5

    errore upload

    vi scrivo perchè non riesco a venir fuori a questo problema.. questo script dovrebbe permettere di eseguire l'upload di una immagine controllandone prima l'estensione e poi spostandolo nella folder di destinazione e farne una copia ridimensionata e convertita in png in un'altra cartella.. finchè si tratta di copiare semplicemente l'immagine da una cartella all'altra lo script funziona ma quando inserisco la riga di codice che dovrebbe permettere di convertire e ridimensionare l'immagine non viene eseguito l'upload... vi sarei grato se sapreste risolvere il problema

    Codice PHP:

    <?php

    // If you want to ignore the uploaded files, 
    // set $demo_mode to true;

    $upload_dir 'uploads/';
    $upload_dir_rid 'uploads_rid/';
    $allowed_ext = array('jpg','png','gif');


    if(
    strtolower($_SERVER['REQUEST_METHOD']) != 'post'){
        
    exit_status('Error! Wrong HTTP method!');
    }


    if(
    array_key_exists('pic',$_FILES) && $_FILES['pic']['error'] == ){
        
        
    $pic $_FILES['pic'];    
        
    $pic_copia $pic;
        
    $pic_nome get_filename($pic['name']);

        if(!
    in_array(get_extension($pic['name']),$allowed_ext)){
            
    exit_status('Only '.implode(',',$allowed_ext).' files are allowed!');
        }    
            
        
        
    /*$destinazione_png = $upload_dir_rid . get_filename($pic_copia['name']) . ".png";*/
        
        // Move the uploaded file from the temporary 
        // directory to the uploads folder:
        
        
        
        
        
        
        
    if(!copy($pic['tmp_name'], $upload_dir_rid.$pic['name'])){
            
    exit_status('Error');
        }
        
            
    // questa è la stringa che crea problemi..
        
    if(resize_img(convert($pic['name']))) {exit_status("Copia eseguita con successo");}
        
        if(
    move_uploaded_file($pic['tmp_name'], $upload_dir.$pic['name'])){
            
    exit_status('File was uploaded successfuly!');
        }    
        
        
        
        
        
            
    }

    exit_status('Something went wrong with your upload!');
    $target_uno $upload_dir basename($pic['name']);
        
    $target_due $upload_dir_rid basename($pic['name']);

        
    $source "$target_uno";
        
    $destination "$target_due";

        if (!
    copy($source$destination)) {
        echo 
    "Copia di $file non riuscita...";
        }

    // Helper functions

    function exit_status($str){
        echo 
    json_encode(array('status'=>$str));
        exit;
    }

    function 
    get_extension($file_name){
        
    $ext explode('.'$file_name);
        
    $ext array_pop($ext);
        return 
    strtolower($ext);
    }
    function 
    get_filename($file_name){
        
    $name substr($file_name0, -3);
        return 
    $name;
    }
    function 
    convert($file_name){
        
        
    $pic_nome get_filename($file_name);
        
        if(
    get_extension($file_name) == 'jpeg'){ imagepng(imagecreatefromjpeg($file_name), "$upload_dir_rid"."$pic_nome".".png");} 
        if(
    get_extension($file_name) == 'wbmp'){ imagepng(imagecreatefromwbmp($file_name), "$upload_dir_rid"."$pic_nome".".png");} 
        if(
    get_extension($file_name) == 'gif'){ imagepng(imagecreatefromgif($file_name), "$upload_dir_rid"."$pic_nome".".png");} 
        if(
    get_extension($file_name) == 'png'){ imagepng(imagecreatefrompng($file_name), "$upload_dir_rid"."$pic_nome".".png");}
        if(
    get_extension($file_name) == 'jpg'){ imagepng(imagecreatefromjpeg($file_name), "$upload_dir_rid"."$pic_nome".".png");} 
        
        
    }
    function 
    resize_img($file_name){
        include(
    'classe_resize.php');

        
    $resize = new resize;
        
    $resize->urlimage "$upload_dir"."$file_name";
        
    $resize->fisso 0;
        
    $resize->maxX 165;
        
    $resize->maxY 140;
        
    $resize->latofisso "XY";
        
    $resize->folder "$upload_dir_rid";
        
    $resize->go();
    }
    ?>
    grazie in anticipo per le risposte

  2. #2
    io ho creato un piccolo cms per fare da diario e praticamente creo una miniatura del file con questo sistema forse può esserti utili

    Codice PHP:


    list($width$height$type$attr) = getimagesize($percorsofoto); // Ottengo le informazioni sull'immagine originale 
    $a=150/($width/$height); //creo il rapporto di proporzione dell'immagine originale per a=miniatura
    // Creo la versione 150 width con altezza in proporzione thumb=miniatura
    $thumb imagecreatetruecolor(150$a);
    $source imagecreatefromjpeg($percorsofoto);
    imagecopyresized($thumb$source0000150$a$width$height);
    imagejpeg($thumb$percorsofotosmall85); // Salvo l'immagine ridimensionata 

  3. #3
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    vi scrivo perchè non riesco a venir fuori a questo problema.. questo script dovrebbe permettere di eseguire l'upload di una immagine controllandone prima l'estensione e poi spostandolo nella folder di destinazione e farne una copia ridimensionata e convertita in png in un'altra cartella.. finchè si tratta di copiare semplicemente l'immagine da una cartella all'altra lo script funziona ma quando inserisco la riga di codice che dovrebbe permettere di convertire e ridimensionare l'immagine non viene eseguito l'upload... vi sarei grato se sapreste risolvere il problema
    Ti serve strettamente che il ridimensionamento avvenga tramite codice php?
    Ho se no puoi ridimensionare l'immagine attraverso i tag html mettendo solo una proprietà del tag <img> cioè mettere solo height="xxx" tralasciando width.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.