Foros del Web » Programando para Internet » PHP »

Problema con funcionamiento de Cron Job

Estas en el tema de Problema con funcionamiento de Cron Job en el foro de PHP en Foros del Web. Saludos a todos nuevamente. Mi problema es el siguiente: estoy intentando programar un Cron para que me actualize unos registros de la base de datos ...
  #1 (permalink)  
Antiguo 09/07/2007, 16:36
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Problema con funcionamiento de Cron Job

Saludos a todos nuevamente.

Mi problema es el siguiente: estoy intentando programar un Cron para que me actualize unos registros de la base de datos la ejecución la hago en Cpanel, y este es el comando que estoy corriendo

/usr/bin/php -q -f /home/user/path/cron.php

y este es mi código cron.php

Código PHP:
$_SESSION["s_estado"] = 'Inactivo';
                            
$consulta "UPDATE usuarios SET estado = '$_SESSION[s_estado]'";    
$resultado mysql_query($consulta$conex);
                                
$my_error mysql_error($conex);
                                
if(!empty(
$my_error))
{
     echo 
"No se pudo actualizar la tabla usuarios";
}
else
{    
                                
mail("[email protected]","CONFIRMACIÓN DE ACTUALIZACIÓN -  ELECTRICIDAD Y TELEFONÍA .","La actualización se ha completado correctamente. <br> ATT. Administrador www.electricidadytelefonia.net. ");

Lo programe para que se ejecutara cada hora y si esto pasa que me envie una confirmación a mi correo pero no sucede nada. si está bien ejecutado el comando en el Cpanel?

Les agradesco cualquier colaboración al respecto Gracias.
  #2 (permalink)  
Antiguo 09/07/2007, 19:47
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 10 meses
Puntos: 2
Re: Problema con funcionamiento de Cron Job

Cita:
Iniciado por Carlojas Ver Mensaje
Saludos a todos nuevamente.

Mi problema es el siguiente: estoy intentando programar un Cron para que me actualize unos registros de la base de datos la ejecución la hago en Cpanel, y este es el comando que estoy corriendo

/usr/bin/php -q -f /home/user/path/cron.php

y este es mi código cron.php

Código PHP:
$_SESSION["s_estado"] = 'Inactivo';
                            
$consulta "UPDATE usuarios SET estado = '$_SESSION[s_estado]'";    
$resultado mysql_query($consulta$conex);
                                
$my_error mysql_error($conex);
                                
if(!empty(
$my_error))
{
     echo 
"No se pudo actualizar la tabla usuarios";
}
else
{    
                                
mail("[email protected]","CONFIRMACIÓN DE ACTUALIZACIÓN -  ELECTRICIDAD Y TELEFONÍA .","La actualización se ha completado correctamente. <br> ATT. Administrador www.electricidadytelefonia.net. ");

Lo programe para que se ejecutara cada hora y si esto pasa que me envie una confirmación a mi correo pero no sucede nada. si está bien ejecutado el comando en el Cpanel?

Les agradesco cualquier colaboración al respecto Gracias.
Cuando te refieres a no sucede nada te refieres a que no te llega ningún mail? Si es esto puede ser que siempre este fallan y entra en el if y solamente imprime el error... te recomiendo que ahí también envíes un mail y tal vez te llegue. También fíjate si le distes permisos de ejecución ("chmod +X ARCHIVO.php") no sé si esto ayudara o no... también agregale en la primera linea del script la cadena "#! /usr/bin/env php" pero creo que esto ultimo no influye en este caso.

Otra cosa, fueron pocas las veces que deje un CRON con un script en PHP pero las veces que lo hice lo hice con CURL ("curl /var/www/mi_script").

Saludos.
  #3 (permalink)  
Antiguo 09/07/2007, 20:10
Avatar de demiurgo_daemon  
Fecha de Ingreso: diciembre-2006
Ubicación: Querétaro
Mensajes: 184
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Problema con funcionamiento de Cron Job

Hola,

antes que nada tienes un error en tu código. En vez de
Código PHP:
$consulta "UPDATE usuarios SET estado = '$_SESSION[s_estado]'"
debe ser
Código PHP:
$consulta "UPDATE usuarios SET estado = '{$_SESSION['s_estado']}'"
Fuera de ahí, podría decirte algunas cosas:
  • ¿Estás seguro de que el ejecutable de php es /usr/bin/php? La instalación puede ser no estándar.
  • Si es así, tienes de dos sopas para hacer tu código ejecutable: dejarlo como está o hacer lo que dice DarioDario:
    • chmod +x ARCHIVO.php (también lo puedes hacer con CPanel, etc, si cuentas con uno)
    • poner el hashbang al inicio del .php: #!/usr/bin/env php
  • Personalmente prefiero lo segundo, además de enviar un correo si hay error

saludos
  #4 (permalink)  
Antiguo 09/07/2007, 20:19
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 10 meses
Puntos: 2
Re: Problema con funcionamiento de Cron Job

Cita:
Iniciado por demiurgo_daemon Ver Mensaje
Fuera de ahí, podría decirte algunas cosas:
  • ¿Estás seguro de que el ejecutable de php es /usr/bin/php? La instalación puede ser no estándar.
  • Si es así, tienes de dos sopas para hacer tu código ejecutable: dejarlo como está o hacer lo que dice DarioDario:
    • chmod +x ARCHIVO.php (también lo puedes hacer con CPanel, etc, si cuentas con uno)
    • poner el hashbang al inicio del .php: #!/usr/bin/env php
  • Personalmente prefiero lo segundo, además de enviar un correo si hay error
Que bueno!!! Ahora aprendí como se llama "hashbang". Intente hablar con propiedad en el post pero no sabía como se llamaba, fui a Google pero no encontré como se llamaba pero gracias a ti ahora lo sé

Saludos.
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 01:54.