Foros del Web » Programando para Internet » PHP »

Abrir url externa desde un Cron Job ¿se puede?

Estas en el tema de Abrir url externa desde un Cron Job ¿se puede? en el foro de PHP en Foros del Web. Hola estoy intentando que desde un Cron Job se abra una página externa. Sabiendo que Php se ejecuta desde el servidor así como los Cron ...
  #1 (permalink)  
Antiguo 24/09/2011, 09:02
 
Fecha de Ingreso: abril-2011
Mensajes: 18
Antigüedad: 13 años
Puntos: 1
Abrir url externa desde un Cron Job ¿se puede?

Hola estoy intentando que desde un Cron Job se abra una página externa. Sabiendo que Php se ejecuta desde el servidor así como los Cron Jobs, y que javascript lo hace desde el cliente, he intentado sin éxito que se me abra una URL externa.

La web que quiero abrir tiene un botón que hay que hacer click para que actualice unos datos. Yo quiero poner un Cron job a esa web para que me actualice los datos de forma periódica sin necesidad de hacer click. Ya tengo la URL con el inicio de sesión y funciona perfecto cuando desde el cliente abro la URL.

He probado a hacer esto desde php:

header("Location: http://www.loquesea.com/click ");

Si ejecuto el script desde el navegador funciona perfecto, pero al hacerlo desde un cron job, parece que al ejecutarse desde el propio servidor, es incapaz de abrir la URL.

También he probado con fopen e igualmente no va.

La pregunta es, ¿se puede conseguir de alguna manera hacer que un Cron job abra una URL externa para que la función que realice esa web externa se ejecute?.

Muchas gracias
  #2 (permalink)  
Antiguo 24/09/2011, 09:11
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

Si a lo que hay que hacer clic es una URL, ¿porque no abrirla directamente?
$file = file_get_contents("http://pagina.com/destino.php");

Si necesitas algo mas complicado siempre esta cURL, Snoopy o PECL_HTTP para hacer peticiones a una pagina.
  #3 (permalink)  
Antiguo 24/09/2011, 09:25
 
Fecha de Ingreso: abril-2011
Mensajes: 18
Antigüedad: 13 años
Puntos: 1
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

Gracias pero si le cambio header("Location: http://www.loquesea.com/click "); por $file = file_get_contents("http://www.loquesea.com/click"); no funciona ni desde el navegador. De hecho que yo sepa file_get_contents es como su propio nombre indica para obtener el contenido de una página y no para que se abra como lo haría desde el navegador.

Tal vez deba echar un vistazo a CURL, SNOOpy etc pero no tengo ni idea de ello.

Gracias
  #4 (permalink)  
Antiguo 24/09/2011, 10:02
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

file_get_contents si es para obtener el resultado de una pagina web, pero para obtener el resultado, la pagina debe se ejecutada obviamente. Lo que debes tener en cuenta es que solo se ejecutara el codigo del lado del servidor, no el JS.
¿Es posible que indiques que pagina estas tratando de ejecutar?
Sino, muestra el codigo que haz intentado usar.
  #5 (permalink)  
Antiguo 24/09/2011, 11:57
 
Fecha de Ingreso: abril-2011
Mensajes: 18
Antigüedad: 13 años
Puntos: 1
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

La URL es irrelevante. En cuanto al código del script no hay en realidad nada más que lo que dije :

<? header("Location: $url"); ?>

solo eso

Si funcionase con esa línea debería ser más que suficiente.
  #6 (permalink)  
Antiguo 24/09/2011, 13:12
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

header() no hara absolutamente nada para lo que deseas, ¿intentaste con file_get_contents()?
  #7 (permalink)  
Antiguo 24/09/2011, 14:33
 
Fecha de Ingreso: abril-2011
Mensajes: 18
Antigüedad: 13 años
Puntos: 1
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

Si. Si que lo intenté cuando me lo sugeriste pero no funcionó. Ni siquiera funcionó ni desde el propio navegador.

Gracias
  #8 (permalink)  
Antiguo 24/09/2011, 19:34
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

Lo acabo de probar desde mi host local y funciono de maravillas con file_get_contents(). Llame a un script que inserta unos datos y si los insertó sin problemas.
  #9 (permalink)  
Antiguo 25/09/2011, 03:35
 
Fecha de Ingreso: abril-2011
Mensajes: 18
Antigüedad: 13 años
Puntos: 1
Respuesta: Abrir url externa desde un Cron Job ¿se puede?

Tienes razón. La página la abre, pero no funciona como esperaba. Es decir, la URL que trato de abrir lleva variable en la propia URL. Si lo ejecuto desde el navegador, reconoce esas variables y entra sin problemas, pero si lo hago con el file_get_contents abre la página pero se queda en la pantalla del login.

$cliente='12231412';
$ppo = '7846199';
$url='http://www.loquesea.com/lha/guardar/'.$ppo.'/?actualiza={'.$cliente.'}';

echo file_get_contents($url);

Desde el navegador usando header("Location: $url"); funciona perfecto, pero al ponerle el cron job ya no va.

Etiquetas: cron, externa, job, url
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 23:47.