Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 17

Discussione: immagine ridimensionata in php che sgrana

  1. #1
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649

    immagine ridimensionata in php che sgrana

    salve ragazzi ho un problema con uno script php ridimensiona l'immagine però la sgrana e non si sa perchè ho calcolato di farla scalare dividendo il suo valore per 5 quindi da 800x600 a 160x120.
    Ma la matematica sembra essere in questo caso un opinione poichè sgrana la foto e non riesco proprio a capire perchè

    Codice PHP:
    <?php 
       
    if(isset($_POST['invia'])){
        
    $dbhost 'localhost'
        
    $dbuser 'dbuser'
        
    $dbpass 'pass'
        
    $dbname 'name'
        
    $connessione mysql_connect("localhost""aaaa""aaa");
        
    mysql_select_db(creaocom_db$connessione) ;
        
        
    $query mysql_query("SELECT path FROM ric");
        
    $riga mysql_fetch_assoc($query);
        
    $dir $riga['path']; 
        
    $Allert="";
        
    $percorso =$dir;
        
    $nome_file=basename$_FILES['Filedata']['name'] );
        if(
    $nome_file !=""){
            
    $uploadfile $percorso.$nome_file;
            
    $sposta=move_uploaded_file$_FILES['Filedata']['tmp_name'] ,$uploadfile );
            
    $thumbComp 100;
            list(
    $width$height$type$attr) = getimagesize($uploadfile);
            
    $max_w=160;
            
    $max_h=120;
            
    $ratio = @min($max_w/$width,$max_h/$height);
            
    $Allert="ATTENEDERE CARICAMENTO FILE";
            
    header("Location:http://www.sito.php");
            if (
    $ratio 1){
                
    $thumb imagecreatetruecolor($max_w,$max_h);
                
    $source imagecreatefromjpeg($uploadfile);
                
    imagecopyresized($thumb$source0000,$max_w,$max_h,$width,$height);
                
    $dir=$percorso."1.jpg";
                
    imagejpeg($thumb,$dir,$thumbComp)or die("Impossibile salvare la miniatura");
                
    unlink($uploadfile);
            }else{
                
    $Allert="CARICAMENTO FILE COMPLETATO!";
                
    $renome $percorso."1.jpg";
                
    //cancello le vacchia 1.jpg
                
    unlink($renome);
                
    //e carico la nuova
                
    $sposta=rename$uploadfile ,$renome);
                
    header("Location:http://www.sito.php");
            }
        }else{
            
    header("Location:http://www.sito.php");
        }
     }
    ?>

  2. #2
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    Ragazzi ho trovato questo articolo "interessante che segnalo a tutta la nostra bellissima community"
    http://www.bigthink.it/php-manipolar...ghe-di-codice/


    come faccio però ad inserirlo nello script da me creato? lo sostituisco nella parte di codice che si occupa del ridimensionamento lasciando intatta però quella che si occupa di rinominare la foto e il gioco è fatto?

  3. #3
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    Ragazzi l'ho modificato cosi' è corretto?

    Codice PHP:
    <?php 
       
    if(isset($_POST['invia'])){
        include 
    "SmartImage/SmartImage.class.php";
        
    $dbhost 'localhost'
        
    $dbuser 'user'
        
    $dbpass 'pass'
        
    $dbname 'name'
        
    $connessione mysql_connect("localhost""user""pass");
        
    mysql_select_db(name$connessione) ;
        
        
    $query mysql_query("SELECT path FROM ric");
        
    $riga mysql_fetch_assoc($query);
        
    $dir $riga['path']; 
        
    $Allert="";
        
    $percorso =$dir;
        
    $nome_file=basename$_FILES['Filedata']['name'] );
        if(
    $nome_file !=""){
            
    $uploadfile $percorso.$nome_file;
            
    $sposta=move_uploaded_file$_FILES['Filedata']['tmp_name'] ,$uploadfile );
            
    $thumbComp 150;
            
    $ratio = @min($max_w/$width,$max_h/$height);
            
    $Allert="ATTENEDERE CARICAMENTO FILE";
            
    header("Location:http://www.sito.php");
            if (
    $ratio 1){
              
    // qui ho modificato lo script 
              
    $dir=$percorso."1.jpg";
              
    $img = new SmartImage($dir);
              
    $img->resize(150113);
              
    $img->saveImage($dir);
             }else{
                
    $Allert="CARICAMENTO FILE COMPLETATO!";
                
    $renome $percorso."1.jpg";
                
    //cancello le vacchia 1.jpg
                
    unlink($renome);
                
    //e carico la nuova
                
    $sposta=rename$uploadfile ,$renome);
                
    header("Location:http://www.sito.php");
            }
        }else{
            
    header("Location:http://www.sito.php");
        }
     }
    ?>

  4. #4
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    me la carica ma non me la rinomina ne ridimensiona :O

  5. #5
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    Ragazzi ora l'ho modificato semplicemente cosi' e dovrebbe funzionare secondo quel tutorial online utilizzando quella classe.
    Invece nulla mi da un sacco di errori, errori che riporterò subito dopo il codice in questo post.
    Help me please guys

    Codice PHP:
    <?php 
       
    if(isset($_POST['invia'])){
        include 
    "SmartImage.class.php";
        
    $dbhost 'localhost'
        
    $dbuser 'dbuser'
        
    $dbpass 'pass'
        
    $dbname 'name'
        
    $connessione mysql_connect("localhost""user""pass");
        
    mysql_select_db(name$connessione) ;
        
    $query mysql_query("SELECT path FROM ric");
        
    $riga mysql_fetch_assoc($query);
        
    $dir $riga['path']; 
        
    $Allert="";
        
    $percorso =$dir;
        
    $Allert="ATTENEDERE CARICAMENTO FILE";
       
    $file $_FILES["foto"];
        
    $img = new SmartImage($file["tmp_name"]);
        
    $img->resize(150113true);
        
    $img->saveImage("$percorso/1.jpg");
        
    header("Location:http://www.sito.php");
        }else{
            echo 
    "ERRORE CARICAMENTO";
        
    }
            
    ?>
    ERRORI:
    Warning: getimagesize() [function.getimagesize]: Filename cannot be empty in /home/dir/domains/sito.com/dir/Vemacar/php/SmartImage.class.php on line 42

    Warning: imagesx() expects parameter 1 to be resource, null given in / on /home/dir/domains/sito.com/dir/Vemacar/php/SmartImage.class.php on line 305

    Warning: imagesy() expects parameter 1 to be resource, null given in /home/dir/domains/sito.com/dir/Vemacar/php/SmartImage.class.php on line 306

    Warning: imagejpeg() expects parameter 1 to be resource, null given in on /home/dir/domains/sito.com/dir/Vemacar/php/SmartImage.class.php line 241

    Warning: Cannot modify header information - headers already sent by (output started at /home/dir/domains/sito.com/public_html/Vemacar/php/SmartImage.class.php:42) in /home/creaocom/domains/sito.com/public_html/dir/php/Upload1.php on line 21
    Ultima modifica di helpdesk; 10-07-2012 alle 17:24

  6. #6
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    proprio nisba ma come mai?

  7. #7
    L'avatar di borgo italia
    borgo italia è offline Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,217
    ciao
    non conosco quella classe, comunque nel primo script che hai postato in
    imagejpeg prova a dargli il valore di qualità 100 (non avendolo messo la compressione è 75)
    comunque anche rimpicciolendo le immagini si sgranano sempre un po' (come nell'ingrandimento)

  8. #8
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    Ciao mitico borgo, grazie per la risposta, sempre disponibile
    il primo script infatti funziona benissimo solo che me la fa sgranare
    il metodo getImagesize non dovrebbe ridimensionare l'immagine tenendo le proporzioni? bhoo
    Comunque scusa non ho capito quale parametro devo cambiare? ti riposto lo script così me lo indichi da qua.
    Codice PHP:
    <?php 
       
    if(isset($_POST['invia'])){
        
    $dbhost 'localhost'
        
    $dbuser 'caaa'
        
    $dbpass 'maaa'
        
    $dbname 'craaab'
        
    $connessione mysql_connect("localhost""craaa""aaaa");
        
    mysql_select_db(aaaaa$connessione) ;
        
        
    $query mysql_query("SELECT path FROM ric");
        
    $riga mysql_fetch_assoc($query);
        
    $dir $riga['path']; 
        
    $Allert="";
        
    $percorso =$dir;
        
    $nome_file=basename$_FILES['Filedata']['name'] );
        if(
    $nome_file !=""){
            
    $uploadfile $percorso.$nome_file;
            
    $sposta=move_uploaded_file$_FILES['Filedata']['tmp_name'] ,$uploadfile );
            
    $thumbComp 100;
            
    $max_w=150;
            
    $max_h=113;
            list(
    $width$height$type$attr) = getimagesize($uploadfile);
            
    $ratio = @min($max_w/$width,$max_h/$height);
            
    $Allert="ATTENEDERE CARICAMENTO FILE";
            
    header("Location:http://www.sito.php");
            if (
    $ratio 1){
                
    $thumb imagecreatetruecolor($max_w,$max_h);
                
    $source imagecreatefromjpeg($uploadfile);
                
    imagecopyresized($thumb$source0000,$max_w,$max_h,$width,$height);
                
    $dir=$percorso."1.jpg";
                
    imagejpeg($thumb,$dir,$thumbComp)or die("Impossibile salvare la miniatura");
                
    unlink($uploadfile);
            }else{
                
    $Allert="CARICAMENTO FILE COMPLETATO!";
                
    $renome $percorso."1.jpg";
                
    //cancello le vacchia 1.jpg
                
    unlink($renome);
                
    //e carico la nuova
                
    $sposta=rename$uploadfile ,$renome);
                
    header("Location:http://www.sito.php");
            }
        }else{
            
    header("Location:http://www.sito.php");
        }
     }
    ?>

  9. #9
    L'avatar di helpdesk
    helpdesk è offline Moderatore
    Data Registrazione
    Sep 2009
    Località
    Pesaro
    Messaggi
    649
    ho capito no non funziona prende il valore da: $thumbComp = 100; e la compressione dovrebbe essere 100 ma sgrana comunque

  10. #10
    L'avatar di borgo italia
    borgo italia è offline Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,217
    ciao
    ti mando il link del manuale, cosi dovresti vedere meglio
    http://it2.php.net/manual/en/function.imagejpeg.php

Pagina 1 di 2 12 UltimaUltima

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •