Foros del Web » Programando para Internet » PHP »

detectar tamaño en bytes de una imagen

Estas en el tema de detectar tamaño en bytes de una imagen en el foro de PHP en Foros del Web. holitas: estoy trabajando con un script php (PHPimg.php)que me genera miniaturas de otras imagenes en la red en donde su codigo html para una imagen ...
  #1 (permalink)  
Antiguo 22/03/2004, 16:39
 
Fecha de Ingreso: mayo-2002
Ubicación: concepcion
Mensajes: 21
Antigüedad: 15 años, 7 meses
Puntos: 0
Pregunta detectar tamaño en bytes de una imagen

holitas:

estoy trabajando con un script php (PHPimg.php)que me genera miniaturas de otras imagenes en la red en donde su codigo html para una imagen es...
<img src="http://www.silisoftware.com/PHPimg.php?q=50&src=http://www.dominio.com/galeria/img/02b.jpg">

donde "q" es la calidad de la imagen, y "src" es la url de la imagen original.


Lo que necesito es que otro script externo detecte el tamaño de la nueva imagen (http://www.silisoftware.com/PHPimg.php?q=50&src=http://www.dominio.com/galeria/img/02b.jpg) antes de imprimir la miniatura en html, y si esta es mayor a 2500 bytes, disminuya la variable "q" para que pese menos y no sobrepase los 2500 bytes.

alguien sabe como puedo hacer esto?

saludos!

Sylvia ;)
  #2 (permalink)  
Antiguo 23/03/2004, 06:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Las imagenes (archivos para el caso) están fuera de tu servidor? (al parecer si .. por qué haces llamadas relativas? ..)

Con la función filesize() podrías obtener el tamaño del archivo .. pero si le indicas una ruta absoluta y está en tus servidores .. Para solventar ese problema, en los comentarios de los usuarios de esa misma función en el manual oficial de PHP se proponen alternativas (y en el foro creo que también salieron alternativas .. usa el buscador).

www.php.net/filesize

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 23/03/2004, 11:43
 
Fecha de Ingreso: mayo-2002
Ubicación: concepcion
Mensajes: 21
Antigüedad: 15 años, 7 meses
Puntos: 0
AYUYA! MMmm funciona, pero no con un URL con variables

Gracias Cluster por el dato!

sabes que en esa pagina encontre el sgte codigo que me funciona para las paginas exteriores , pero solo acepta para aquellas direcciones que son de la forma: http://cosa.com/archivo.php , pero no me acepta si es http://cosa.com/archivo.php?q=50&src....cl/imagen.gif

:(

¿que tendria que cambiarle al codigo para que me funcione?.
No se mucho de php, asi que no se que hacer para que corra bien

Esperando AYUYA ,
Desde el Sure

Sylvia :)



el codigo:
<?php
function remote_file_size ($url)
{
$head = "";
$url_p = parse_url($url);
$host = $url_p["host"];
$path = $url_p["path"];

$fp = fsockopen($host, 80, $errno, $errstr, 20);
if(!$fp)
{ return false; }
else
{
fputs($fp, "HEAD ".$url." HTTP/1.1\r\n");
fputs($fp, "HOST: dummy\r\n");
fputs($fp, "Connection: close\r\n\r\n");
$headers = "";
while (!feof($fp)) {
$headers .= fgets ($fp, 128);
}
}
fclose ($fp);
$return = false;
$arr_headers = explode("\n", $headers);
foreach($arr_headers as $header) {
$s = "Content-Length: ";
if(substr(strtolower ($header), 0, strlen($s)) == strtolower($s)) {
$return = substr($header, strlen($s));
break;
}
}
return $return;
}

print ("Google logo is " . remote_file_size ("http://www.google.it/intl/it_it/images/logo.gif") . " bytes!");
?>
  #4 (permalink)  
Antiguo 23/03/2004, 13:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
mm ahí no sé .. El código está usando parte del protocolo HTTP que no dominio ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 09:41.