Foros del Web » Programando para Internet » PHP »

getimagesize() en archivos SWF Remotos

Estas en el tema de getimagesize() en archivos SWF Remotos en el foro de PHP en Foros del Web. Saludos. Estoy utilizando la función getimagesize() para capturar las dimensiones de archivos FLASH pero que están ubicadas en servidores remotos. Me da el siguiente mensaje: ...
  #1 (permalink)  
Antiguo 12/01/2006, 08:36
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
getimagesize() en archivos SWF Remotos

Saludos.

Estoy utilizando la función getimagesize() para capturar las dimensiones de archivos FLASH pero que están ubicadas en servidores remotos.

Me da el siguiente mensaje:

Warning: getimagesize(): stream does not support seeking

Cómo soluciono esto?
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #2 (permalink)  
Antiguo 12/01/2006, 10:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El problema es que esa función no acepta un URL como parámetro para indicar la ruta de tus archvios gráficos sino una ruta absoluta.

En los comentarios de los ususarios de esa función tienes ejemplos para hacerlo de forma remota:

Se basan en abrir el archivo con funciones como fopen() (si es que tienes disponibles los accesos a "wrappers" externos .. es decir, que puedas vincular a un archivo por URL externo .. ) y de ahí usan las funciones GD para componer vía "string" una imagen y aplicar las funciones GD correspondientes para obtener tus datos de la imagen.

En consecuencia necesitas de soporte GD (www.php.net/gd) en tus servidores además de "allow_fopen_wrappers" (creo que es así la directiva) habilitados para que esta función te funcione.

Cita:
djwishbone at hotmail dot com
19-Nov-2003 04:31
Using remote files with getimagesize($URL) never worked for me. Except when I would grab files from the same server. However, I developed some code with the help from the people here that does work. If you are having problems give this function a shot:

Código PHP:
function getimagesize_remote($image_url) {
   
$handle fopen ($image_url"rb");
   
$contents "";
   if (
$handle) {
   do {
       
$count += 1;
       
$data fread($handle8192);
       if (
strlen($data) == 0) {
           break;
       }
   
$contents .= $data;
   } while(
true);
   } else { return 
false; }
   
fclose ($handle);

   
$im ImageCreateFromString($contents);
   if (!
$im) { return false; }
   
$gis[0] = ImageSX($im);
   
$gis[1] = ImageSY($im);
// array member 3 is used below to keep with current getimagesize standards
   
$gis[3] = "width={$gis[0]} height={$gis[1]}";
   
ImageDestroy($im);
   return 
$gis;

Un saludo,
  #3 (permalink)  
Antiguo 12/01/2006, 12:05
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Bien, pues en las versiones actuales de PHP si es posible usar esa función de forma remota (ve el reporte de los bugs en php.net), de hecho ya lo hago.

El problema es únicamente con los archivo SWF. Los JPG, GIF funcionan perfectos.

Probare esa función que me mencionas tu a ver que tal.
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #4 (permalink)  
Antiguo 12/01/2006, 12:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ok,
Cita:
URL support was added in PHP 4.0.5 Example 2. getimagesize (URL)
No me fijé en esta reseña del manual oficial de PHP (no de los "bugs") .. No veo referencias en contra sobre que no se pueda hacer .. En tal caso si crees que es un "bug" de PHP, puedes hacer tu consulta en el sistema de reportes de bug de PHP.net a ver que te dicen.

Un saludo,
  #5 (permalink)  
Antiguo 12/01/2006, 12:35
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Pues eso mismo intente, pero no puedo escribir a menos que tenga mi usuario CSV (que no se que es eso, jejeje) y no veo por ningún lado algo para registrarme, en fin, eso es otro tema.

El asunto es que anda pariendo con este asunto.

Seguire preguntando por allí, cualquier cosa la publico.

Gracias
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #6 (permalink)  
Antiguo 12/01/2006, 13:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El csv es el "repositorio" de los "fuentes" (código) de PHP .. Pero .. no necesitas eso para publicar un posible "bug" a PHP.net.

De hecho eso es una recomendación para que pudieras "pegar" tal vez parte del código que origine el error (si andas "compilando o desarrollando" parte del "core" de PHP) ...

Lo que si que es recomendable como a la hora de preguntar en cuanquier sitio es usar su sistema de buscador para ver si hay referencias al tema .. tal vez en la versión que usas planteaba el problema y se solventó en las siguientes versiones de PHP .. no sé .. todo hay que confirmarlo.

Para colocar un posible reporte .. usa esta dirección .. ahí tienes el formulario de ingreso de "bug":
http://bugs.php.net/report.php

Un saludo,
  #7 (permalink)  
Antiguo 12/01/2006, 13:33
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Si listo ya lo coloque.

Ciertamente investigue al respecto, pero de pana que no vi nada.

De todas formas aquí esta la publicación y sus explicaciones: http://bugs.php.net/35984.
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #8 (permalink)  
Antiguo 12/01/2006, 16:39
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Esta fue la respuesta de la gente de PHP:

Please try using this CVS snapshot:

http://snaps.php.net/php5.1-latest.tar.gz

For Windows:

http://snaps.php.net/win32/php5.1-win32-latest.zip
Alguién me explica que son los CVS snapshot ???
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #9 (permalink)  
Antiguo 13/01/2006, 05:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te indican que uses la última versión de PHP disponible (o a partir de la versión que te indican).

Siempre en PHP.net van a decirte y hablar del "CSV" (Repositorio) por qué ahí está desde las versiones anteriores de PHP .. hasta la última compilación de PHP del día de hoy (con las últimas mejoras/solución de bug que se dan día a dia y que luego pasan a estados de desarrollo "RCn°" (Release Candidate) y de ahí en poco tiempo ha su versión final).

En resumen .. actualiza tu versión de PHP a una versión 5.1.x o la última recomendable (a día de hoy es la 5.1.1).

Un saludo,
  #10 (permalink)  
Antiguo 13/01/2006, 05:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ahora .. estaría bueno que PHP.net hiciera referencia a ese detalle .. una frase tipo: "getimagesize() para .swf en modo remoto sólo desde PHP 5.1.x en adelante".

Confirma haciendo tus pruebas .... Te invitaría a publicar tu experiencia con esta recomendación en los comentarios de los usuarios de esa función .. La verdad que ahí muchas veces salen comentarios de "última" hora que no han sido incorporados a la documentación y que ayudan mucho. De hecho la gente que trabaja en php.net en la documentación los vé y si corresponde los incorpora a la documentación.

Un saludo,
  #11 (permalink)  
Antiguo 13/01/2006, 08:24
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Caramba Cluster me hablaste en Mandarin, jejejeje

Ok, dejame ver donde consigo los comentarios de los usuarios de esa función en PHP .... para postear el asunto

En cuanto a actualizar el PHP, Imposible. En el hosting ya me notificaron que no pueden hacer eso, porque para ellos migrar a otra versión de PHP deben estar seguros que a todos sus clientes no los va a afectar.

En fin.
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #12 (permalink)  
Antiguo 13/01/2006, 08:42
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Bien, lo coloque en el www.php.net en la sección de la función getimagesize.

Cluster si no era allí, dime en donde era.
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #13 (permalink)  
Antiguo 13/01/2006, 09:16
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En cuanto a actualizar el PHP, Imposible. En el hosting ya me notificaron que no pueden hacer eso, porque para ellos migrar a otra versión de PHP deben estar seguros que a todos sus clientes no los va a afectar.

Cualquier cambio de versión afecta a las aplicaciones en mayor o menor medidad de como estén programadas, algunas ni se "enteraran" .. otras lo sufriran duro. Pero vamos .. si así es la política de ese proveedor .. esperemos que reciba muchos reclamos que les pidan cambiar la versión de PHP y por el momento podrías (como medida de presión y si puedes): cambiarte a otro proveedor que te proporcione lo que necesites.

Un saludo,
  #14 (permalink)  
Antiguo 13/01/2006, 09:19
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si .. era ahí, si te fijas al pié de cada descripción de una función/tema en el manual oficial de PHP salen unos comentarios de los usuarios (que como ya has visto todos pueden publicarlos). El caso es que supongo que serán "validados" por gente de php.net (por qué no lo veo?)

Un saludo,
  #15 (permalink)  
Antiguo 13/01/2006, 09:39
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Jejejej pues si.

Me enviaron un mail diciendo que eso no lo podian publicar allí.

----
Read the following paragraphs carefully, because they contain
pointers to resources better suited for requesting support or
reporting bugs, none of which are to be included in manual notes
because there are mechanisms and groups in place to deal with
those issues. ....

... Your note has been removed from the online manual.

----

Que tal ??
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #16 (permalink)  
Antiguo 13/01/2006, 11:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues no entendí nada, no que no entienda la frase en ingles sino que no sé que les pusistes para que te contesten así.

Es decir .. pusistes lo mismo que cuando reportastes el "bug"? ... Tal vez por ahí se "confundieron".

Lo que deberías indicar es simplemente ..

"Si tienen problemas con los .swf .. para ller de forma extrera con getimagesieze .. usen la versión 5.1 en adelante .. " .. o deja claro que en la documentación (en su versión en ingles) no hacen comentario alguno al respecto y si que te notificaron la "solución" vía reporte del bug ..

Pero bueno, por lo menos queda referencia del problema aquí en el foro .. y a esperar que por "google" alguien llegue aquí si tiene ese problema.

Un saludo,
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 09:26.