Запуска скрипта по рассписанию

Статус
В этой теме нельзя размещать новые ответы.

stasdre

Постоялец
Регистрация
15 Янв 2010
Сообщения
125
Реакции
18
Подскажите есть ли какие нибудь варианты запуска скрипта по расписанию не использую Cron.
Задача в том что-бы скрипт запускать каждый день в 00:00.
Возможно сделать так чтобы он запускался при первом заходе юзера на сайт, но тогда как проверять даты и время в таком случаи:nezn:

Может у кого-то есть какие-нибудь идеи по этому поводу:bc:
 
PHP:
<?
$today = date("Ymd");
$filename = 'path/'.$today;
if (!file_exists($filename)) {
    echo "The file $filename does not exist"; //Запускай тот код который тебе надо
	//по выполнении кода создавай файл с именем равным сегодняшней дате
	$handle = fopen($filename, "w");
	fclose($handle);
} 

?>
код будет раз в сутки создавать файл с текущей датой и запускать нужный код, если файл с текущей датой уже существует ничего не произойдет
для папки path задай права на запись
 
PHP:
<?
$today = date("Ymd");
$filename = 'path/'.$today;
if (!file_exists($filename)) {
    echo "The file $filename does not exist"; //Запускай тот код который тебе надо
    //по выполнении кода создавай файл с именем равным сегодняшней дате
    $handle = fopen($filename, "w");
    fclose($handle);
} 

?>
код будет раз в сутки создавать файл с текущей датой и запускать нужный код, если файл с текущей датой уже существует ничего не произойдет
для папки path задай права на запись

Что за бред вы написали? Ваш скрипт, если он вообще верно работать будет, выполнится максимум 1 раз.

Добавлено через 6 минут
Подскажите есть ли какие нибудь варианты запуска скрипта по расписанию не использую Cron.
Задача в том что-бы скрипт запускать каждый день в 00:00.
Возможно сделать так чтобы он запускался при первом заходе юзера на сайт, но тогда как проверять даты и время в таком случаи:nezn:

Может у кого-то есть какие-нибудь идеи по этому поводу:bc:
Подходить к такой задачи без крона это извращение. Как вариант скрипт должен быть запущен из браузера либо из консоли. Если время запуска всегда будет разное, то первоначально определяется разница в секундах между текущим временем и 0:00, столько времени скрипт должен "спать" до первого запуска. По истечению времени скрипт запускается 1й раз и после выполнения всех выполненных действий будет рассчитываться новое время "сна". Все это дело запускаешь в бесконечном цикле либо в цикле с кол-во суток, которое должен работать скрипт. Думаю идея тебе ясна.
 
Что за бред вы написали? Ваш скрипт, если он вообще верно работать будет, выполнится максимум 1 раз.
Это реализация предложенного метода
stasdre написал(а):
сделать так чтобы он запускался при первом заходе юзера на сайт, но тогда как проверять даты и время в таком случаи
если мой скрипт разместить в index.php то при первом (за эти сутки) заходе кого либо(даже бот поисковика подойдет) на сайт можно выполнить некоторый код. Это конечно извращенная замена крону, но на безрыбье....
 
Солидарен с a_n_d_y. Лучше заюзать онлайн сервис для этого дела. имхо, самый рациональный вариант

 
Спаибо всем за советы но вроде я нашел решение если кому интересно то вот оно:

PHP:
$timefoto = $db->get_var("SELECT Online FROM TimeFoto WHERE Omline_ID=1");
if(mktime(0, 0, 0, date("d"), date("m"), date("Y")) >= $timefoto)
{
require("rating.php");
$sectime = mktime(0, 0, 0, date("d")+1, date("m"), date("Y"));
$timeupdate = $db->get_results("UPDATE TimeFoto SET Online=".$sectime." WHERE Omline_ID=1");
}

P.S. По идее должно работать;)
 
Спаибо всем за советы но вроде я нашел решение если кому интересно то вот оно:
PHP:
$timefoto = $db->get_var("SELECT Online FROM TimeFoto WHERE Omline_ID=1");
if(mktime(0, 0, 0, date("d"), date("m"), date("Y")) >= $timefoto)
{
require("rating.php");
$sectime = mktime(0, 0, 0, date("d")+1, date("m"), date("Y"));
$timeupdate = $db->get_results("UPDATE TimeFoto SET Online=".$sectime." WHERE Omline_ID=1");
}
P.S. По идее должно работать;)
не понимаю, а кто этот скрипт запустит то????
скрипт кто-то должен запускать, либо юзверь на сайт зайти, либо крон или что-то подобное, что работает онлайн всегда..
 
не понимаю, а кто этот скрипт запустит то????
скрипт кто-то должен запускать, либо юзверь на сайт зайти, либо крон или что-то подобное, что работает онлайн всегда..
Да просто ТС либо не знает чего хочет либо не знает о чем говорит. Пусть тогда покупает себе обезьяну и учит ее раз в сутки нажимать на кнопку.

Добавлено через 1 минуту
Это реализация предложенного метода

если мой скрипт разместить в index.php то при первом (за эти сутки) заходе кого либо(даже бот поисковика подойдет) на сайт можно выполнить некоторый код. Это конечно извращенная замена крону, но на безрыбье....
крон - это выполнение скрипта по расписанию, а где у тебя расписание? или ты думаешь что ровно в 0:00 кто-то зайдет, причем ни на секунду не раньше и не позже, если вообще кто-то зайдет?
 
Можно сделать типа псевдокрон. Поставить на сайт с ненулевой посещаемость file_get_contents('http://site.com/scritp.php') а в самом скрипте проверять текущее время и сохранять дату последнего успешного запуска.
Получается, что скрипт будет запускать скажем в 12.00-12.30 по времени.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху