Foros del Web » Programando para Internet » PHP »

Duda -- > ImageJPEG

Estas en el tema de Duda -- > ImageJPEG en el foro de PHP en Foros del Web. Bueno, Hola a todos! Vereis estoy creando una pagina en la cual se van a mostrar muchas imagenes!! Entonces me creo las miniaturas sin problemas ...
  #1 (permalink)  
Antiguo 21/12/2003, 13:02
 
Fecha de Ingreso: septiembre-2003
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
readfile con espacios

Bueno, Hola a todos! Vereis estoy creando una pagina en la cual se van a mostrar muchas imagenes!! Entonces me creo las miniaturas sin problemas con la Funcion ImageCreateFromJPEG y luego le bajo la calidad, etc y las muestro en un indice, pero ... mi duda es a la hora de mostra la imagen con toda su calidad y dimensiones!! Estoy intentando coger la imagen y crear una para mostrarla con el ImageJPEG($img) con el fin de que cuando pinches con el derecho la ruta de la imagen sea del tipo

http://www.sitioweb.com/mostrar.php?img=147

el archivo mostrar.php seria este:

Código:
<?php
//leleria la base de datos correspondiente y obtendria la ruta de la imagen para la img=147

//ejemplo de resultado:

$img = "http://www.sitioweb.com/img/imagen_en_cuestion.jpg"

//ahora creo una imagen a partir de la obtenida

    $image = ImageCreateFromJPEG("$img");

//ahora la muestro

    Header("Content-type: image/jpeg");
    ImageJPEG($img);

// y la borro
    ImageDestroy($img);
?>
Pero no me lo hace como deberia!! porque la imagen que obtengo ocupa segun le da mas o menos tamaño que la orginal!!

Todo esto es con el fin de que no se muestre la ruta donde tengo guardadas las imagenes. Seguro que se puede hacer de una manera mas sencilla, pero ando perdido!!

Muchas Gracias de Antemano!!

Saludos

Última edición por VerderoL; 10/01/2004 a las 06:47
  #2 (permalink)  
Antiguo 22/12/2003, 03:24
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Si la imagen ya existe, puedes simplemente "volcar" el contenido del fichero, sin usar funciones GD. Sobre todo si sabes que todas son jpeg. Puedes hacer un simple:
Código PHP:
$img "http://www.sitioweb.com/img/imagen_en_cuestion.jpg"
//ahora la muestro

    
Header("Content-type: image/jpeg");
    
readfile($img); 
Mira el manual readfile(www.php.net/readfile).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 22/12/2003, 08:29
 
Fecha de Ingreso: septiembre-2003
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
Ok, muchas gracias, ves ya se otra cosa mas!! como el tema era de imagenes me cegue en las funciones GD.

Saludos
  #4 (permalink)  
Antiguo 10/01/2004, 06:39
 
Fecha de Ingreso: septiembre-2003
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
Buenas a todos otra vez!! solucionado este problema, segui haciendo la web y cuando llegue a probar a ver las imagenes con el script ............ cual es el problema?¿ que cuando la imagen tiene espacios:

http://misitio.com/imagenes/un sabado 12-5-02.jpg

el readfile no lo hace, no me muestra la imagen si la ruta no contiene espacios. y quitar los espacios seria un follon, porque son muchas imagenes y en ciertos servidores no me deja utilizar las funciones php.

Bueno espero que me volvais a ayudar, saludos
  #5 (permalink)  
Antiguo 10/01/2004, 09:43
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
Prueba aplicar rawurlencode() o urlencode() antes de llamar a readfile().
www.php.net/urlencode

Saludos.
  #6 (permalink)  
Antiguo 10/01/2004, 12:53
 
Fecha de Ingreso: septiembre-2003
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
graciaspor contestar tan rapido! no me funciono, pero dandole vueltas, era mas simple ... solo tenia que reemplazar los espacios por %20 yo lo hacia al contario reemplazaba los %20 por espacios

Conclusion si alguien quiere mostrar imagenes y que no se conozca su ruta:
Código PHP:
<?php
$img 
"http://misitio.com/imagen en cuestion.jpg";
//cambiamos los espacios por %20
$img str_replace(' ','%20',$img);
Header("Content-type: image/jpeg");
// y ahora mostramos la imagen
readfile($img);
?>
saludos y gracias

Última edición por VerderoL; 10/01/2004 a las 12:57
  #7 (permalink)  
Antiguo 10/01/2004, 14:58
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Bueno, si no me equivoco eso es una de las cosas que hace urlencode() (o la rawurlencode(), no recuerdo).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #8 (permalink)  
Antiguo 12/02/2004, 11:07
 
Fecha de Ingreso: febrero-2003
Ubicación: Santa Rosa
Mensajes: 10
Antigüedad: 14 años, 9 meses
Puntos: 0
Código PHP:
<? 
$nombre 
$_GET['nombre']; 
$query "SELECT imagen FROM imagenes WHERE nombre = '$nombre'"
$result = @mysql_query($query); 
$imagen = @mysql_result($result0); 
Header"Content-type: image/jpeg");
echo 
$imagen
?>
Tengo el siguiente codigo, que me busca una imagen en una base
de datos... ahora el problema que tengo, es que no se como hacer para cuando determinada imagen no exista en la base de
datos... en relalidad, no solo la imagen, si no todo el registro...
ni nombre ni imagen... y que cuando pase esto, me muestre
o un gif transparente, o una imagen que este en otro campo
en la bd.

Gracias
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 07:30.