Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Остановка при наступлении времени
Форумы портала PHP.SU » » Операционная система и системные вызовы » Остановка при наступлении времени

Страниц (1): [1]
 

1. prog90 - 19 Сентября, 2011 - 15:40:33 - перейти к сообщению
Здраствуйте,
подскажите, как сделать, чтобы при наступлении заранее заданного времени, в базе данных в таблице в одной строке менялось поле статус?
Т.е. администратор заранее задает, когда должен окончится процесс, и в таблице в записи, соответствующей этому процессу, поле status со статусом должно изменить с единицы на двойку.
Заранее спасибо
2. EuGen - 19 Сентября, 2011 - 15:45:57 - перейти к сообщению
Используйте планировщик задач
http://ru[dot]wikipedia[dot]org/wiki/Cron
3. illy - 19 Сентября, 2011 - 15:57:56 - перейти к сообщению
это можно сделать и через php если очень надо Подмигивание
юзер зашёл на страницу. запустился скрипт проверки времени. если время подошло то изменить статус в базе.
4. prog90 - 19 Сентября, 2011 - 16:11:40 - перейти к сообщению
А может ли cron не сработать?
5. Мелкий - 19 Сентября, 2011 - 16:16:05 - перейти к сообщению
prog90, может. Если в указанное время сервер был выключен.
6. prog90 - 19 Сентября, 2011 - 16:16:28 - перейти к сообщению
И еще: если на том хостинге нет cron, то как тогда сделать?
7. Мелкий - 19 Сентября, 2011 - 16:17:50 - перейти к сообщению
prog90, гуглите web cron и подобные запросы. Есть таковые.
8. prog90 - 19 Сентября, 2011 - 16:24:14 - перейти к сообщению
А еще вопрос:
а как сделать так, чтобы при обращении к любой строке любой из нескольких таблиц происходила проверка времени, и выполнялось обновление статуса?
Т.е. как сделать так, чтобы не писать для каждой таблицы на каждый вид запроса (Select, insert и т.д.) триггер?
9. Мелкий - 19 Сентября, 2011 - 16:31:43 - перейти к сообщению
prog90, мне кажется, вы архитектурно неверно решаете задачу.
10. prog90 - 19 Сентября, 2011 - 16:35:26 - перейти к сообщению
А как тогда ее решить?
Нужно чтобы голосование, созданное администратором, для которого задано время окончания, остановилось тогда, когда наступит время окончания.

И еще:
Вроде бы в Mysql есть Shedule. Можно ли ее использовать?
11. EuGen - 19 Сентября, 2011 - 16:37:42 - перейти к сообщению
Если речь о механике, закладываемую в саму БД, то напишите триггер, который будет срабатывать и проверять даты.
12. prog90 - 20 Сентября, 2011 - 22:54:44 - перейти к сообщению
Спасибо

 

Powered by ExBB FM 1.0 RC1