Hola, Tengo un trozo de código php rebelde. Es tan sencillo como ésto: *** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo date ("Y/m/d", filemtime($filename)); } ?> *** Es heredado de otro servidor que está con una versión más antigua (php4) y donde funciona bien, pero al ejecutarlo en una suse 10.3 con apache2 y php5 el resultado de lo anterior no muestra nada en la página web y en el registro de errores de apache tampoco graba ningún mensaje cuando cargo la página en el navegador :-? ¿Algún gurú del php? :-) Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22 de agosto de 2008 8:25, Camaleón
Hola,
Tengo un trozo de código php rebelde. Es tan sencillo como ésto:
*** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo date ("Y/m/d", filemtime($filename)); } ?> ***
Es heredado de otro servidor que está con una versión más antigua (php4) y donde funciona bien, pero al ejecutarlo en una suse 10.3 con apache2 y php5 el resultado de lo anterior no muestra nada en la página web y en el registro de errores de apache tampoco graba ningún mensaje cuando cargo la página en el navegador :-?
Yo no soy ningun gurú, pero mi metodo es el de prueba y error. A veces, una coma, o un punto fuera de lugar, es lo que afecta. http://ar.php.net/file_exists http://www.phpit.net/code/file-exists/ Quizas tengas un problema con el formato de fecha. Salu2 --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22/08/08, Juan Erbes escribió:
Yo no soy ningun gurú, pero mi metodo es el de prueba y error.
Ese es el mejor método :-P
A veces, una coma, o un punto fuera de lugar, es lo que afecta. http://ar.php.net/file_exists http://www.phpit.net/code/file-exists/
Quizas tengas un problema con el formato de fecha.
Puede ser... no sigo las especificaciones de cada versión de php O:-) *** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo "hola"; } ?> *** Pero tampoco saca nada... y lo que más me escama que no registre ningún error :-? Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El día 22 de agosto de 2008 14:08, Camaleón
El 22/08/08, Juan Erbes escribió:
Yo no soy ningun gurú, pero mi metodo es el de prueba y error.
Ese es el mejor método :-P
A veces, una coma, o un punto fuera de lugar, es lo que afecta. http://ar.php.net/file_exists http://www.phpit.net/code/file-exists/
Quizas tengas un problema con el formato de fecha.
Puede ser... no sigo las especificaciones de cada versión de php O:-)
*** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo "hola"; } ?> ***
tal vez no exista... o no lo encuentre... y asi que saca? }else{ echo "hola2"; }
Pero tampoco saca nada... y lo que más me escama que no registre ningún error :-?
Saludos,
-- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
--------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22/08/08, Marc ct escribió:
tal vez no exista... o no lo encuentre... y asi que saca?
}else{ echo "hola2";
}
Pues saca el "hola 2". Pero el recurso url existe :-? Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Camaleón wrote:
Hola,
Tengo un trozo de código php rebelde. Es tan sencillo como ésto:
*** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo date ("Y/m/d", filemtime($filename)); } ?> ***
Es heredado de otro servidor que está con una versión más antigua (php4) y donde funciona bien, pero al ejecutarlo en una suse 10.3 con apache2 y php5 el resultado de lo anterior no muestra nada en la página web y en el registro de errores de apache tampoco graba ningún mensaje cuando cargo la página en el navegador :-?
¿Algún gurú del php? :-)
Saludos,
No soy guru (ni mucho menos), pero, de acuerdo al manual de php [0] """ Warning This function returns FALSE for files inaccessible due to safe mode restrictions. However these files still can be included if they are located in safe_mode_include_dir. """ Supongo que habra que ver el php.ini y ver de que se trata ese "safe mode" [1] . Tambien vi por ahi usar como alternativa la funcion fopen() [2] [0] http://ar2.php.net/file_exists [1] http://ar2.php.net/manual/en/features.safe-mode.php [2] http://ar2.php.net/fopen Suerte ahi. Gerardo --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22/08/08, Gerardo Herzig escribió:
No soy guru (ni mucho menos), pero, de acuerdo al manual de php [0] """ Warning
This function returns FALSE for files inaccessible due to safe mode restrictions. However these files still can be included if they are located in safe_mode_include_dir.
"""
Supongo que habra que ver el php.ini y ver de que se trata ese "safe mode" [1] .
Ejecutando el "phpinfo()" veo que "safe_mode" está a "off" (local value y master value) y "safe_mode_include_dir" está también en ambos (local y master) a "no value". No he modificado la configuración que pone suse en php5 :-?
Tambien vi por ahi usar como alternativa la funcion fopen()
Lo pruebo... pero no sé si el código php es correcto: *** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (fopen($filename,'r')) { echo date ("Y/m/d", filemtime($filename)); } ?> *** Bueno, ahora pone algo. Me saca "1970/01/01" :-?. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22/08/08, Camaleón escribió:
Bueno, ahora pone algo. Me saca "1970/01/01" :-?.
Hay un error en el registro: *** PHP Warning: filemtime(): stat failed for Resource id #5 *** Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Camaleón escribió:
Hola,
Tengo un trozo de código php rebelde. Es tan sencillo como ésto:
*** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo date ("Y/m/d", filemtime($filename)); } ?> ***
Es heredado de otro servidor que está con una versión más antigua (php4) y donde funciona bien, pero al ejecutarlo en una suse 10.3 con apache2 y php5 el resultado de lo anterior no muestra nada en la página web y en el registro de errores de apache tampoco graba ningún mensaje cuando cargo la página en el navegador :-?
¿Algún gurú del php? :-)
Saludos,
Buenas tardes, Yo probaría a leer el registro de errores, que en una instalacion por defecto en opensuse se situa en /var/log/apache2/error_log Así puedes obtener mayor información sobre el error en cuestión. Si por el contrario quieres que salgan los errores por pantalla has de modificar el archivo de configuración de apache ( php.ini ) Saludos --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Friday 22 August 2008 13:25:18 Camaleón escribió: Hola, creo que el problema es que file_exists solo funciona para archivos locales. Para consultar un archivo en http:// deberías usar fopen ó mejor fsockopen: http://es.php.net/manual/es/function.fsockopen.php Saludos
Tengo un trozo de código php rebelde. Es tan sencillo como ésto:
*** <?php $filename = 'http://www.dominio.com/archivo.xml'; if (file_exists($filename)) { echo date ("Y/m/d", filemtime($filename)); } ?> ***
--------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 22/08/08, Alberto Garcia escribió:
creo que el problema es que file_exists solo funciona para archivos locales.
Lo acabo de probar con un archivo local y sí funciona :-? Qué raro... el mismo código está en otro servidor que lleva una versión más antigua de php y aquí "file_exists" funciona con direcciones externas (http) y saca la fecha, no lo entiendo :-/
Para consultar un archivo en http:// deberías usar fopen ó mejor fsockopen:
Bueno, pues al final he utilizado uno de los ejemplos* que aparecen en el manual de php de "filemtime" para poder obtener la fecha de modificación de un archivo remoto (mediante "fsockopen") y parece que funciona :-? ¡Gracias a todos! :-) *http://es2.php.net/filemtime Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Camaleón escribió:
¿Algún gurú del php? :-)
Yo :-D el wrapper "http://" de PHP no soporta stat_url , o sea file_exists() no funcionara :P tienes que procesar la informacion retornada por la funcion get_headers() en su lugar -- "A computer is like an Old Testament god, with a lot of rules and no mercy. " Cristian Rodríguez R. Platform/OpenSUSE - Core Services SUSE LINUX Products GmbH Research & Development http://www.opensuse.org/
El 22/08/08, Cristian Rodríguez escribió:
el wrapper "http://" de PHP no soporta stat_url , o sea file_exists() no funcionara :P
¿En el php de suse o en general? Porque lo tengo funcionando en otro servidor no suse con el "file_exists" y eso es lo que me ha despistado :-? Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
2008/8/22 Camaleón
El 22/08/08, Cristian Rodríguez escribió:
el wrapper "http://" de PHP no soporta stat_url , o sea file_exists() no funcionara :P
¿En el php de suse o en general?
Porque lo tengo funcionando en otro servidor no suse con el "file_exists" y eso es lo que me ha despistado :-?
Revisa porque ayer me aparecieron algunas actualizaciones de php: http://download.opensuse.org/repositories/server:/php:/extensions/openSUSE_1... http://download.opensuse.org/repositories/server:/php:/applications/openSUSE... Quizas este solucion de tu problema allí. Salu2 --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
2008/8/25, Juan Erbes:
Revisa porque ayer me aparecieron algunas actualizaciones de php:
http://download.opensuse.org/repositories/server:/php:/extensions/openSUSE_1...
http://download.opensuse.org/repositories/server:/php:/applications/openSUSE...
Quizas este solucion de tu problema allí.
Gracias por el aviso, Juan. El problema lo solucioné modificando el código. Además, en los servidores intento instalar sólo actualizaciones de seguridad. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
participants (7)
-
Alberto Garcia
-
Alfonso Otero
-
Camaleón
-
Cristian Rodríguez
-
Gerardo Herzig
-
Juan Erbes
-
Marc ct