[PHP] Запуск скрипта 1 раз в день без CRON

T
На сайте с 28.06.2007
Offline
82
10066

Подскажите пожалуйста как запустить скрипт по приходу первого уникального посетителя?

Т.е. чтобы скрипт исполнялся один раз в день через include например. По приходу первого посетителя или робота поисковой системы...

Можно такое сделать без использования CRON?

PHPExpert
На сайте с 04.02.2006
Offline
104
#1

Можно.

http://ru2.php.net/manual/en/function.time.php

http://ru2.php.net/manual/en/function.file-put-contents.php (либо сохранять дату последнего запуска в БД)

banshee(oleg)
На сайте с 12.08.2007
Offline
140
#2

можно. храните в бд запись (дату выполнения) .. если дата не сегодняшний день, то обновляем запись, выполняем скрипт.

[Удален]
#3
banshee(oleg):
можно. храните в бд запись (дату выполнения) .. если дата не сегодняшний день, то обновляем запись, выполняем скрипт.

все бы вам в бд хранить, это "модно" сейчас стало? оО

Seredniy
На сайте с 17.03.2008
Offline
251
#4
bearman:
все бы вам в бд хранить, это "модно" сейчас стало? оО

предлагаете всю инфу хранить в файлах?

Wordpress и другие CMS: правки, настройка, верстка и натяжка шаблонов, разработка сайтов "под ключ" (/ru/forum/1008050)
T
На сайте с 28.06.2007
Offline
82
#5

Всем огромное спасибо! Ещё в самом начале так сделать думал, но потом мысль с уникальным посетителем пришла, наверное при реализации она будет ещё более ресурсоёмкой...

Как думаете не сильно хостинг будет нагружать такой код?

<?php

$fdata=file_get_contents("data.txt");
$data = date("ymd");
if ($data!=$fdata)
{
include ("cron.php");
$file_data=fopen("data.txt", "w+");
fwrite($file_data, $data);
fclose($file_data);
}
?>

С другим вопросом разобрался... Без цикла не обойтись, но придумал другой вариант...

Всем огромное спасибо! Всегда здесь получаю быстрые и грамотные ответы!

[Удален]
#6
Seredniy:
предлагаете всю инфу хранить в файлах?

предлагаю использовать базу только когда она нужна.

Seredniy
На сайте с 17.03.2008
Offline
251
#7
bearman:
предлагаю использовать базу только когда она нужна.

Да, я соглашусь что если ради скрипта, который выполняет незначимую задачу использовать БД то это бред ) Но если скрипт уже подключился к БД( не может работать без нёё, то тогда использование файлов тоже будет не к месту)

Dreammaker
На сайте с 20.04.2006
Offline
569
#8

Seredniy, ну почему. Хотя я сторонник БД и т.д., но здесь не соглашусь - делать запрос из-за одного обновления в сутки - это чересчур, хотя когда как. :)

Seredniy
На сайте с 17.03.2008
Offline
251
#9
Dreammaker:
Seredniy, ну почему. Хотя я сторонник БД и т.д., но здесь не соглашусь - делать запрос из-за одного обновления в сутки - это чересчур, хотя когда как. :)

выше я какраз и написал это). Нужно всегда сводить к минимуму кол-во запросов к БД, но не теряя производительности и т.д.

alexspb
На сайте с 14.11.2005
Offline
187
#10
Dreammaker:
Хотя я сторонник БД и т.д., но здесь не соглашусь - делать запрос из-за одного обновления в сутки - это чересчур, хотя когда как.

да надо просто комбинировать, чтобы не делать лишних запросов - само простое - сажать куку, а при ее отсутствии проверять.

А вообще, выбор - это всегда компромис. В данном случае есть много но:

если сайт не грузит сильно сервер, то лично мне, с БД работать удобнее,

если вопрос идет об оптимизации нагрузки - то надо думать, какое решение будет лучше (что сильно зависит и от движка, и от нагрузки, наверняка и другие параметры найдутся.

ЗЫ Если подключение к базе все-равно скриптом выполняет, то один запрос с LIMIT 1 наверное проще будет, чем файлы парсить...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий