Foros del Web » Programando para Internet » PHP »

¿Como hago esto con php?

Estas en el tema de ¿Como hago esto con php? en el foro de PHP en Foros del Web. Desde hace poco, puse que la gente pudiera poner una imagen escribiendo: Código HTML: [img]url_de_la_imagen[/img] y php lo convertía automáticamente a Código HTML: <img src=comprobar.php?url=url_de_la_imagen> ...
  #1 (permalink)  
Antiguo 23/07/2009, 17:28
 
Fecha de Ingreso: octubre-2008
Mensajes: 171
Antigüedad: 16 años, 1 mes
Puntos: 2
¿Como hago esto con php?

Desde hace poco, puse que la gente pudiera poner una imagen escribiendo:

Código HTML:
[img]url_de_la_imagen[/img]
y php lo convertía automáticamente a

Código HTML:
<img src=comprobar.php?url=url_de_la_imagen> 
Y en la página comprobar.php puse:

Código PHP:
<?
$altoancho 
GetImageSize($_GET['url']); 

if (
$altoancho[0]<750){
header("location:".$_GET['url']);
}else{
header("location:imagen_demasiado_grande.gif");
}
?>
Para comprobar que la imagen no fuera de mas de 750 px de ancho, pero me acabo de dar cuenta de que a veces aparece un cuadrado con la X en lugar de la imagen, y tengo que darle boton derecho -> mostrar imagen un par de veces para que me la muestre.

¿Por qué puede ocurrir esto? ¿Qué puedo hacer para que funcione?
  #2 (permalink)  
Antiguo 23/07/2009, 17:48
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: ¿Como hago esto con php?

EDIT: Ahora que veo tu codigo detenidamente, no redirecciones. Lee la imagen desde PHP y envia las cabeceras necesarias, ejemplo:

Código php:
Ver original
  1. header("Content-Type: image/jpeg");
  2. readfile($_GET['url']);

El codigo es solo de ejemplo, en la practica real tienes que obtener el tipo de archivo (que ya lo tienes con getimagesize) y dependiendo del ancho, mostrar una u otra.
  #3 (permalink)  
Antiguo 23/07/2009, 17:50
 
Fecha de Ingreso: octubre-2008
Mensajes: 171
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: ¿Como hago esto con php?

No porque le pongo el <img src= pero sin el comprobar.php y se abre enseguida.

Si alguien sabe alguna forma de hacerlo... le agradeceria que me lo dijera
  #4 (permalink)  
Antiguo 23/07/2009, 17:52
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: ¿Como hago esto con php?

Edite el post, echale un vistazo.
  #5 (permalink)  
Antiguo 24/07/2009, 08:50
 
Fecha de Ingreso: octubre-2008
Mensajes: 171
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: ¿Como hago esto con php?

Muchas gracias.

¿Y si la imagen en lugar de ser jpg es por ejemplo gif, funcionaría?
  #6 (permalink)  
Antiguo 24/07/2009, 08:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: ¿Como hago esto con php?

Solo cambia la cabecera entonces por image/gif.

Saludos.
  #7 (permalink)  
Antiguo 24/07/2009, 13:42
 
Fecha de Ingreso: octubre-2008
Mensajes: 171
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: ¿Como hago esto con php?

Pero necesito que eso sea automático.

¿Cómo lo hago?
  #8 (permalink)  
Antiguo 24/07/2009, 13:56
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: ¿Como hago esto con php?

Cita:
Iniciado por Ronruby
El codigo es solo de ejemplo, en la practica real tienes que obtener el tipo de archivo (que ya lo tienes con getimagesize)
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:01.