Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Upload immagini alta qualità

    Ciao ragazzi, volevo chiedervi una cosetta, io tempo fa ho fatto un script per il caricamento e se necessario il ridimensionamento di delle immagini, solo che la risoluzione è un pochino scarsa, non è proprio sgranata, ma penso che ci possa essere di meglio. Quello che vi chiedo è se qualcuno mi potrebbe aiutare a rendere più belle le immagini ridimensionate? vi posto lo script

    Codice PHP:

    <?php
    session_start
    ();
    $nick_sess=$_SESSION['nick'];

    //mi connetto al database
    $archivio=mysql_connect("http://projectphp.altervista.org""projectphp""progettologin");
    $beta=mysql_select_db("my_projectphp");

    $time=time();
    $data=date("d/m/y");


    //controllo se ha giÃ_ un immagine diversa da default_account_img_155x155.png

    $query=mysql_query("SELECT avatar FROM utenti_iscritti WHERE idut='$nick_sess'");
    $assoc=mysql_fetch_assoc($query);
    if (
    $assoc['avatar'] != 'default_account_img.png'){
    //se ha giÃ_ caricato un immagine la cancello dala cartella img_utenti_155x155
    $img_db=$assoc['avatar'];
        
    unlink("avatar_utenti/$img_db");
    }






    //controllo se il cariicamento ha avuto qualche errore
    if ($_FILES['img']['error'] != UPLOAD_ERR_OK){
        
    //se c'è qualche errore glielo mostro
        
    $error=$_FILES['img']['error'];
        if (
    $error==4){$error="Seleziona un file!";}
        echo 
    "<script>alert(\"$error\"); history.go(-1);</script>";
    }
    else{
            
    //altrimenti controllo il formato del file
            //se il tipo di file Ã¨ diverso da JPG,GIF,PNG MANDO UN MEX D'ERRORE
            
    if ($_FILES['img']['type'] != "image/gif" and $_FILES['img']['type'] != "image/jpeg" and $_FILES['img']['type'] != "image/png") {
                echo 
    "<script>alert(\"Tipo di file non corretto!\"); history.go(-1);</script>";
            }
            else{
                
    //se il file Ã¨ corretto
                // Ottengo l'altezza e la larghezza
                
    list($width$height) = getimagesize($_FILES['img']['tmp_name']);
                
    //controllo se non superano i 155 x 155
                
    if ($width 200 && $height 200){

                    
    //nome immagine da ridimensionare
                    
    $file $_FILES['img']['tmp_name'];
                    
    //altezza new
                    
    $width_  200;
                    
    //larghezza new in scala
                    
    $height_ = (200*$height)/$width;
                    
    //qualitÃ_
                    
    $qualita 100;
                    
    $new_image imagecreatetruecolor($width_$height_);
                    
    $type=$_FILES['img']['type'];

                    if (
    $type == "image/gif"){
                        
    //nome dell'immagine che caricherò
                        
    $name_new_image "avatar_utenti/$time.gif";
                        
    $src_image imagecreatefromgif($file);
                        
    imagecopyresized($new_image$src_image0000$width_$height_imagesx($src_image), imagesy($src_image));
                        
    imagegif($new_image$name_new_image$qualita);

                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.gif' WHERE idut='$nick_sess'");
                    
                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    }
                    else if (
    $type == "image/jpeg"){
                        
    //nome dell'immagine che caricherò
                        
    $name_new_image "avatar_utenti/$time.jpeg";
                        
    $src_image imagecreatefromjpeg($file);
                        
    imagecopyresized($new_image$src_image0000$width_$height_imagesx($src_image), imagesy($src_image));
                        
    imagejpeg($new_image$name_new_image$qualita);

                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.jpeg' WHERE idut='$nick_sess'");
                    
                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    }
                    else if (
    $type == "image/png"){
                        
    //nome dell'immagine che caricherò
                        
    $name_new_image "avatar_utenti/$time.png";
                        
    $src_image imagecreatefrompng($file);
                        
    imagecopyresized($new_image$src_image0000$width_$height_imagesx($src_image), imagesy($src_image));
                        
    imagepng($new_image$name_new_image0);

                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.png' WHERE idut='$nick_sess'");

                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    }
            }
            else{
                
    $type=$_FILES['img']['type'];
                if (
    $type == "image/gif"){
                        
    move_uploaded_file($_FILES['img']['tmp_name'], "avatar_utenti/$time.gif");
                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.gif' WHERE idut='$nick_sess'");
                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    }
                    else if (
    $type == "image/jpeg"){
                        
    move_uploaded_file($_FILES['img']['tmp_name'], "avatar_utenti/$time.jpeg");

                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.jpeg' WHERE idut='$nick_sess'");
                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    }
                    else if (
    $type == "image/png"){
                        
    move_uploaded_file($_FILES['img']['tmp_name'], "avatar_utenti/$time.png");
                        
    //inserisco il nome all'interno deldatabase
                        
    $query=mysql_query("UPDATE utenti_iscritti SET avatar='$time.png' WHERE idut='$nick_sess'");

                        echo 
    "<script type=\"text/javascript\">alert(\"Immagine caricata con successo!\"); history.go(-1)</script>";
                    
                    }
         
      

            }

        }


    }


    ?>
    Che mondo sarebbe senza Nutella.

    PHP/MYSQL/HTML/CSS/JAVASCRIPT

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Il parametro per la qualità dell'immagine l'hai già messo a 100, non penso tu possa fare di più.
    La qualità dipende solo dalla compressione che usi nel salvarle e tu usi già la migliore possibile.

  3. #3
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    ..certo che puoi fare meglio..
    ti basta usare invece di
    imagecopyresized
    imagecopyresampled
    con gli stessi parametri..

  4. #4
    Ha perfetto, quindi basta sostituire??
    Che mondo sarebbe senza Nutella.

    PHP/MYSQL/HTML/CSS/JAVASCRIPT

  5. #5
    diciamo che per iniziare potresti iniziare a cancellare i parametri di connessione messi belii in chiaro nel codice che hai postato
    http://www.miniscript.it
    Se ti sono stato di aiuto in qualche modo in questo forum iscriviti alla fan page di Miniscript - il mio blog di programmazione web.

  6. #6
    O cca... non posso più modificare me lo modifichi se puoi gentilmente! grazie!
    Che mondo sarebbe senza Nutella.

    PHP/MYSQL/HTML/CSS/JAVASCRIPT

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.