Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: [GD] crea immagine

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205

    [GD] crea immagine

    salve a tutti
    ho bisogno di una funzione che mi crei una thumb di una dimensione da me scelta (w/h) dopo l'upload da un form

    il codice che sto facendo è...

    Codice PHP:
    function crea_thumb($originale_path$nuova_path$width$height$qualita)
    {
        if (
    file_exists ($originale_path))
        {
            
    $originale_dimensione getimagesize($originale_path);
            switch (
    $originale_dimensione['mime'])
            {
                case 
    'image/jpeg':
                    
    $originale_temp imagecreatefromjpeg ($originale_path);
                    
    $nuova_temp imagecreate ($width$height);
                    
    imagecopyresized($nuova_temp$originale_temp0000$width$height$originale_dimensione[0], $originale_dimensione[1]);
                    if (!
    file_exist ($nuova_path))
                    {
                        
    /* creo file? */
                        
                    
    }
                    
    imagejpeg($nuova_temp$nuova_path$qualita);
                    
    ImageDestroy($originale_temp);
                    
    ImageDestroy($nuova_temp);
                break;
                case 
    'image/gif':
                break;
                case 
    'image/png':
                break;
            }
        }

    e la richiamo in questo modo

    crea_thumb('vecchia.jpg', 'nuova.jpg', '132', '132', 80);

    ma per usare imagejpeg() si presuppone che nuova.jpg sia già esistente per scriverci dentro... come devo fare?

    grazie a chi mi aiuterà
    .

  2. #2
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093

    Re: [GD] crea immagine

    Originariamente inviato da IcedGlow
    salve a tutti
    ho bisogno di una funzione che mi crei una thumb di una dimensione da me scelta (w/h) dopo l'upload da un form

    il codice che sto facendo è...

    Codice PHP:
    function crea_thumb($originale_path$nuova_path$width$height$qualita)
    {
        if (
    file_exists ($originale_path))
        {
            
    $originale_dimensione getimagesize($originale_path);
            switch (
    $originale_dimensione['mime'])
            {
                case 
    'image/jpeg':
                    
    $originale_temp imagecreatefromjpeg ($originale_path);
                    
    $nuova_temp imagecreate ($width$height);
                    
    imagecopyresized($nuova_temp$originale_temp0000$width$height$originale_dimensione[0], $originale_dimensione[1]);
                    if (!
    file_exist ($nuova_path))
                    {
                        
    /* creo file? */
                        
                    
    }
                    
    imagejpeg($nuova_temp$nuova_path$qualita);
                    
    ImageDestroy($originale_temp);
                    
    ImageDestroy($nuova_temp);
                break;
                case 
    'image/gif':
                break;
                case 
    'image/png':
                break;
            }
        }

    e la richiamo in questo modo

    crea_thumb('vecchia.jpg', 'nuova.jpg', '132', '132', 80);

    ma per usare imagejpeg() si presuppone che nuova.jpg sia già esistente per scriverci dentro... come devo fare?

    grazie a chi mi aiuterà
    non ho capito.... a me il codice sembra corretto...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205

    Re: Re: [GD] crea immagine

    Originariamente inviato da kuarl
    non ho capito.... a me il codice sembra corretto...
    retry

    manca questo:

    if (!file_exist ($nuova_path))
    {
    /* creo file? */
    }

    altrimenti mi restituisce questo errore

    Warning: imagejpeg(): Unable to open 'nuova.jpg' for writing in ...............php on line 52

    e la linea 52 è questa:
    imagejpeg($nuova_temp, $nuova_path, $qualita);
    .

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    .

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    forse vi sto antipatico...
    .

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    mi spiego meglio.. come ho fatto la funzione io, per funzionare, si presuppone che nuova.jpg esista già per poterci scrivere dentro.. devo crearla al momento e poi scriverci dentro
    .

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    Codice PHP:

                    
    if (!file_exists ($nuova_path))
                    {
                        
    fopen($nuova_path"w");
                        
                    } 
    ho risolto così ma mi sembra una soluzione del cavolo.. come devo fare?

    per favore aiutatemi
    .

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    .
    .

  9. #9
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    continuo a non capire... tu con quello script vorresti creare le thumb di immagini partendo da un file già presente sul disco e salvarle in un'altro punto??

    se è così sappi che con imagejpeg, se il file non esiste lo crea.... quindi quel pezzo incriminato è inutile

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    Originariamente inviato da kuarl
    continuo a non capire... tu con quello script vorresti creare le thumb di immagini partendo da un file già presente sul disco e salvarle in un'altro punto??

    se è così sappi che con imagejpeg, se il file non esiste lo crea.... quindi quel pezzo incriminato è inutile
    no... imagejpeg non lo crea se non esiste.. mi dice

    Warning: imagejpeg(): Unable to open 'nuova.jpg' for writing in ...............php on line 52
    .

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.