Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 196
от 10.12.2005, 23:51

Администратор:Калашников О.А.
В рассылке:Подписчиков: 209, Экспертов: 33
В номере:Вопросов: 1, Ответов: 5


Вопрос № 30866: Здравствуйте! Как заставить запускаться на сервере служебный скрипт с определенной периодичностью, без запросов клиента. Я в РНР новичок - только начал изучать и сразу же возникла такая проблема. Необходимо, чтобы данные базы данных обрабатывались на...

Вопрос № 30.866
Здравствуйте! Как заставить запускаться на сервере служебный скрипт с определенной периодичностью, без запросов клиента. Я в РНР новичок - только начал изучать и сразу же возникла такая проблема. Необходимо, чтобы данные базы данных обрабатывались на сервере постоянно, вне зависимости от того есть ли в данный момент запросы клиентов или нет. Заранее благодарен.
Отправлен: 05.12.2005, 23:49
Вопрос задал: Тормышев Валерий Евгеньевич (статус: Посетитель)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: NeiTrinO
Здравствуйте, Тормышев Валерий Евгеньевич!
PHP здесь, вообще-то, не при чем.
Это все делает серверный демон (что-то вроде резидентного приложения в винде... ну когда оно в трее висит и делает что-либо). Называется этот демон Crontab. Только он может заставить выполнять сервер определенные дейтсвие с определенной периодичностью.
Для использования его уточните у своего хостинг-провайдера, разрешено ли Вам пользоваться этой фичей.
---------
Мы не уверены ни в чем и никогда, зато всегда уверены в обратном
Ответ отправил: NeiTrinO (статус: 5-ый класс)
Отправлен: 06.12.2005, 00:31

Отвечает: Doctor013
Здравствуйте, Тормышев Валерий Евгеньевич!
Запускать служебные программы с определенной периодичностью можно с помощью планировщика заданий в Windows или аналога под названием Cron в Unix. ПОдробнее почитать про Cron можно здесь http://linux.net.ru/node/127 .

Ответ отправил: Doctor013 (статус: 1-ый класс)
Отправлен: 06.12.2005, 09:18

Отвечает: Дмитрий Иванов
Здравствуйте, Тормышев Валерий Евгеньевич!

запускаешь crontab -e - будет VI редактор
туда пишешь твой скрипт, сцрипт должен быть с мин chmod 755. и если надо интерпретатор перед ним, синтаксис описания найдешь через man
---------
ставя оценку - подумай, может ты не все описал.
Ответ отправил: Дмитрий Иванов (статус: 7-ой класс)
Отправлен: 06.12.2005, 11:38

Отвечает: Ilya
Здравствуйте, Тормышев Валерий Евгеньевич!
Всего лишь нужен cron. Это такое серверное приложение, похожее на планировщик задач windows (вообще говоря большой вопрос кто там на кого больше похож). Для того чтобы его использовать прежде всего необходим платный хостинг, ибо на бесплатном его разумеется не дают. Руководство пользователя этой утилитой можно раздобыть либо у хостера (если он действительно приличный хостер) либо в интернете. При необходимости задавайте вопросы сюда.
p.s. а так ли необходима обработка информации в базе? обычно крон требуется для действительно серьёзных вещей, вроде репликации больших БД, каких-то серьёзных обновлений скажем большого количества цен в зависимости от курса валюты или уе или чего-то подобного. Просто если Вы чуть опишите задачу, можно будет поискать решение и попроще. Хотя что может быть проще cron-а? :)
---------
no pain - no game
Ответ отправил: Ilya (статус: 1-ый класс)
Отправлен: 06.12.2005, 11:39

Отвечает: Константин
Здравствуйте, Тормышев Валерий Евгеньевич!
Это очень просто. есть такая вещь - cron. Про нее и читайте
Если у хостера стоит cpanel, тогда еще проще. Переходите в раздел Cron jobs и там устанавливаете нужную периодичность:
* означает "каждый"
т.е. * * * * * * каждую минуту
30 * * * * * каждые полчаса
0 0 * * * * - раз в сутки
После этого - команду которая выполняется.
Это должен быть вызов php-интерпретатора из командной строки. Делается так:
/path/to/php -f /path/to/your/file.php >> /path/to/log_file
т.е. вы должны вызвать интерпретатор с параметром -f, т.е. выполнить файл и дать путь к файлу. Вывод скрипта перенаправить в /path/to/log_file и дописать к существующему содержимому
Вам остается только узнать где у хостера лежит пхп. Это или на сайте или письмо в техподдержку. Может и в phpinfo() есть, я не помню.
Ответ отправил: Константин (статус: 1-ый класс)
Отправлен: 07.12.2005, 19:07


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Яндекс Rambler's Top100 hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=314124&im=101&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("HotLog")

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.phpplus
Архив рассылки
Отписаться
Вспомнить пароль

В избранное