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

    Problemi a richiamare una funzione in un file

    Salve, ho hostato il mio sito su altervista ma ho dei problemi a far funzionare una funzione per creare runtime delle thumbnail di immagini.

    Le immagini nelle pagine del sito sono inserite con il seguente tag:


    Codice PHP:
    <?php img2big("Immagini/immagine_file005.jpg"); ?>

    e la funzione img2big è la seguente:

    Codice PHP:
    <?php

    function img2big($src,$alt=NULL)
    {
     
    echo 
    "<a href=\"$src\" target=\"_blank\"><img src=\"immagine.php?imm=$src\" alt=\"$alt\" /></a>";

    }


    ?>

    a sua volta il file a cui fa riferimento (immagine.php) è così:

    Codice PHP:
    <?php

    $iim 
    $_GET['imm'];

    // Constants
    define(IMAGE_BASE'http://0x010.isf.it');
    define(MAX_WIDTH150);
    define(MAX_HEIGHT150);

    // Get image location
    $image_file str_replace('..'''$_SERVER['QUERY_STRING']);
    $image_path IMAGE_BASE "/$iim";


    // Load image
    $img null;
    $ext strtolower(end(explode('.'$image_path)));
    if (
    $ext == 'jpg' || $ext == 'jpeg') {
        
    $img = @imagecreatefromjpeg($image_path);
    } else if (
    $ext == 'png') {
        
    $img = @imagecreatefrompng($image_path);
    // Only if your version of GD includes GIF support
    } else if ($ext == 'gif') {
        
    $img = @imagecreatefrompng($image_path);
    }

    // If an image was successfully loaded, test the image for size
    if ($img) {

        
    // Get image size and scale ratio
        
    $width imagesx($img);
        
    $height imagesy($img);
        
    $scale min(MAX_WIDTH/$widthMAX_HEIGHT/$height);

        
    // If the image is larger than the max shrink it
        
    if ($scale 1) {
            
    $new_width floor($scale*$width);
            
    $new_height floor($scale*$height);

            
    // Create a new temporary image
            
    $tmp_img imagecreatetruecolor($new_width$new_height);

            
    // Copy and resize old image into new image
            
    imagecopyresized($tmp_img$img0000
                             
    $new_width$new_height$width$height);
            
    imagedestroy($img);
            
    $img $tmp_img;        
        }    
    }

    // Create error image if necessary
    if (!$img) {
        
    $img imagecreate(MAX_WIDTHMAX_HEIGHT);
        
    imagecolorallocate($img,0,0,0);
        
    $c imagecolorallocate($img,70,70,70);
         
    imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,
    $c2);
         
    imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,
    $c2);
    }

    // Display the image
    header("Content-type: image/jpeg");
    imagejpeg($img);




    ?>

    e premetto che queste righe hanno sempre funzionato benissimo sul vecchio sito.


    Ora invece le immagini non vengono visualizzate come thumbnail, ma si vedono rettangolini neri!
    Il problema è che l'indirizzo dell'immagine è il seguente:

    [img]immagine.php?imm=Immagini/firewall_file010.JPG[/img]

    e come si vede, il file immagine.php non viene richiamato..




    Perchè questo?

    C'è qualcosa che dovrei aggiungere?


    Grazie per ogni aiuto, sono disperato!

  2. #2
    up, datemi una mano per favore!

  3. #3
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    sicuro che le versioni di php e delle librerie gd siano le stesse del vecchio sito?

    Questa è la prima cosa che mi viene in mente...

    Fammi sapere

  4. #4
    Ecco ho risolto!

    Il problema era in questa riga:

    Codice PHP:
    //$image_path = IMAGE_BASE . "/$iim";
    $image_path "$iim"

    così come è scritta qui sopra va bene invece!


    Grazie dell'aiuto comunque!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.