Tareas programadas PHP & MySQL

O

Alguien sabe la forma de programar algo para una hora determinada? Que a la hora X , haga estas funciones y cargue estos datos?

En mysql nohay procedimientos , así que no se. Alguna idea?

Un saludo

Chulla

interesante pregunta..

si te das cuenta estas hablando de hacer un servidor programado en php

Es decir, estas hablando de hacer un script que se ejecute continuamente y dada cierta condición ( a X hora) ejecute cierta instrucción.

Yo pienso que no es posible, aunque puedo caer en el error claro :)

tal vez con un while infinito ? nunca lo he probado.

Lo que si puedes hacer un script en perl que se ejecute como un servidor, y que este chekeando ciertas condiciones ( llamadas sql a cierta tabla-campo para comprobar ciertos valores), para ejecutar cierto código.

pero vamos si alguien ha hecho algo parecido en php que lo diga .

S

man cron

PiradoIV

Por poderse...

<?php
$horario = array( "desde" => "aquí pones un timestamp",
"hasta" => "aquí pones otro timestamp");
$actual = time();

if($actual >= $horario[desde] && $actual <= $horario[hasta])
{
// Aquí el código a ejecutar en esa franja horaria
} else {
// Recargamos la página cada 60 segundos
echo '<meta http-equiv="refresh" content="60; url=index.php" />';
}
?>

Saludotes,
Pirado IV estuvo akí ;)

Whose

De la forma que dice Pirado habria que tener el archivo ejecutandolo desde el navegador, en PHP dudo que haya una manera de que lo haga automaticamente sin ejecutar el archivo desde el navegador.

O

pero si el servidor tiene k estar todo el rato ejecutando eso, no sería el infierno de sobrecarga?

Chulla

escribe el siguiente script ( con o sin extensión php)

<?php

$horario = array( "desde" => "aquí pones un timestamp",
"hasta" => "aquí pones otro timestamp");

// o consulta la tu db para obtener/chekear cierta variable int(11) de fecha

while(1)
{

$actual = time();
if($actual >= $horario[desde] && $actual <= $horario[hasta])
{
// Aquí el código a ejecutar en esa franja horaria
continue;
}
}
?>

necesitas ejecutarlo desde la linea de comandos :)

win

$ c:/php/php.exe -q c:/directorio/script.php

unix

le añades
#!/usr/local/bin/php -q

php /directorio/script.php &

pero claro , supongo que donde está tu well y tal, no tienes acceso a la shell , y no puedes ejecutar nada

si es asi, no podras hacer nada amigo

feliz navidad

O

pero no tengo shell, así que no me sirve xD

alguna solucion mas? xD

Un saludo

Usuarios habituales