Foros del Web » Programando para Internet » PHP »

Problema con mostrar imagen redimensionada GD

Estas en el tema de Problema con mostrar imagen redimensionada GD en el foro de PHP en Foros del Web. Hola a todos, tengo este script que lo encontre hace tiempo y lo modifique a mi gusto para hacer "lo contrario" a lo que quiero ...
  #1 (permalink)  
Antiguo 05/01/2011, 16:38
Avatar de VbOkonly  
Fecha de Ingreso: julio-2009
Ubicación: San Justo, Buenos Aires, Argentina
Mensajes: 490
Antigüedad: 14 años, 9 meses
Puntos: 5
Sonrisa Problema con mostrar imagen redimensionada GD

Hola a todos, tengo este script que lo encontre hace tiempo y lo modifique a mi gusto para hacer "lo contrario" a lo que quiero hacer ahora.
Mi idea es mostrar la imagen al redimensionarla. Se que puedo guardar la imagen y hacer una consulta para mostrarla pero estoy flojo de hosting y necesito mostrarla al redimensionar sin guardarla en el servidor ...
¿Como puedo hacer? hace una hora estoy buscandole la vuelta

Saludos!.


Código PHP:
<?php 
error_reporting
(E_ALL);
ini_set('display_errors'1); 


$idir "images/";   // Path To Images Directory
$tdir "images/thumbs/";   // Path To Thumbnails Directory
$twidth $_POST['width'];   // Maximum Width For Thumbnail Images
$theight $_POST['height'];   // Maximum Height For Thumbnail Images
$prefijo substr(md5(uniqid(rand())),0,5); //Random Pref

// Uploading/Resizing Script
  
$url $_FILES['imagefile']['name'];   // Set $url To Equal The Filename For Later Use
  
if ($_FILES['imagefile']['type'] == "image/jpg" || $_FILES['imagefile']['type'] == "image/jpeg" || $_FILES['imagefile']['type'] == "image/pjpeg") {
    
$file_ext strrchr($_FILES['imagefile']['name'], '.');   // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php
    
$copy copy($_FILES['imagefile']['tmp_name'], "$idir".$prefijo."_" $_FILES['imagefile']['name']);   // Move Image From Temporary Location To Permanent Location
    
if ($copy) {   // If The Script Was Able To Copy The Image To It's Permanent Location
      
print 'Image uploaded successfully.<br />';   // Was Able To Successfully Upload Image
      
$simg imagecreatefromjpeg("$idir".$prefijo."_" $url);   // Make A New Temporary Image To Create The Thumbanil From
      
$currwidth imagesx($simg);   // Current Image Width
      
$currheight imagesy($simg);   // Current Image Height
      
if ($currheight $currwidth) {   // If Height Is Greater Than Width
         
$zoom $twidth $currheight;   // Length Ratio For Width
         
$newheight $theight;   // Height Is Equal To Max Height
         
$newwidth $currwidth $zoom;   // Creates The New Width
      
} else {    // Otherwise, Assume Width Is Greater Than Height (Will Produce Same Result If Width Is Equal To Height)
        
$zoom $twidth $currwidth;   // Length Ratio For Height
        
$newwidth $twidth;   // Width Is Equal To Max Width
        
$newheight $currheight $zoom;   // Creates The New Height
      
}
      
$dimg imagecreate($newwidth$newheight);   // Make New Image For Thumbnail
      
imagetruecolortopalette($simgfalse256);   // Create New Color Pallete
      
$palsize ImageColorsTotal($simg);
      for (
$i 0$i $palsize$i++) {   // Counting Colors In The Image
       
$colors ImageColorsForIndex($simg$i);   // Number Of Colors Used
       
ImageColorAllocate($dimg$colors['red'], $colors['green'], $colors['blue']);   // Tell The Server What Colors This Image Will Use
      
}
      
imagecopyresized($dimg$simg0000$newwidth$newheight$currwidth$currheight);   // Copy Resized Image To The New Image (So We Can Save It)
      
imagejpeg($dimg"$tdir".$prefijo."_" $url);   // Saving The Image

      
imagedestroy($simg);   // Destroying The Temporary Image
      
imagedestroy($dimg);   // Destroying The Other Temporary Image
      
print 'Image resized created successfully.';   // Resize successful
    
} else {
      print 
'<font color="#FF0000">ERROR: Unable to upload image.</font>';   // Error Message If Upload Failed
    
}
  } else {
    print 
'<font color="#FF0000">ERROR: Wrong filetype (has to be a .jpg or .jpeg. Yours is ';   // Error Message If Filetype Is Wrong
    
print $file_ext;   // Show The Invalid File's Extention
    
print '.</font>';
?>
  #2 (permalink)  
Antiguo 07/01/2011, 06:36
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Problema con mostrar imagen redimensionada GD

En principio no puedes mostrar la imagen si no está en ninguna parte, ha de estar guardada.
Si no te interesa generara thumbs o guardarlos, entonces puedes crearlos en un directorio temporal y borrarlas al finalizar la ejecución del script, así, el tiempo de vida del archivo es de unos pocos segundos. Podrás mostrar las img pero sin ocupar sitio.
La pagina que muestra estas imágenes puede utilizar la función unlink() para eliminarlos. Espero que sirva, saludos

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:45.