Intereting Posts
fgets () PHP прочитал последнюю строку? «Предупреждение: mysql_query (): предоставленный аргумент не является допустимым ресурсом MySQL-Link" Код для ограничения регистрации пользователя – скрыть / показать форму php Список PHP на основе выбора формы: ошибка MDB2: ошибка синтаксиса Как перезаписать существующую папку или файл в php ftp upload? Вы не выбрали файл для загрузки CodeIgniter Отправка почты, с отправителем электронной почты в качестве отправителя Проверьте, включены ли файлы cookie Форма Zend: как мне заставить ее сгибаться по моей воле? Как мне войти в медиавики с помощью PHP cURL? Недопустимая аббревиатура сокращенного времени DST для Австралии при использовании date_default_timezone_set Получение образования с помощью API-интерфейса Facebook в PHP Ошибка MS SQL Conversion не удалось при преобразовании значения varchar в тип данных int и JOIN two Tables неожиданный «класс» (T_CLASS) только на удаленном (не на локальном) Печать данных таблицы mysql php

добавить php-скрипт в cron для запланированной задачи из php?

есть ли способ добавить php-скрипт (файл) в cron для запуска этого скрипта каждые десять минут или в запланированное время?

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

поэтому мне нужно создать задание cron из php для запуска php-файла в указанное время.

это возможно, если у вас есть общая среда веб-хостинга (а не vps)

Если у вас есть имя файла сценария – news.php, а в /home/user/news.php линия crontab выглядит как:

* * * * * php /home/user/news.php 

Если вы хотите, не запускайте это каждую минуту. Вы можете редактировать * с левой (m, h, dom, mon, dow)

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

Но вы можете запустить работу crontab на другом сервере, чтобы запустить news.php с помощью apache по протоколу http. В этом случае ваше задание crontab на удаленном сервере должно запускать ваш скрипт через Интернет. Например. wget – хороший вариант для него:

 * * * * * wget http://www.yourdomain.com/dir/news.php 

Мой совет не позволяет скрипту PHP, вызываемому Apache, изменять cron. На этом все написано. Обычно cron настроен так, чтобы требовать корневого разрешения. Это можно изменить, но дело в том, что если ваш сайт будет взломан, предоставление злоумышленнику возможности изменить ваш cron может быть действительно очень плохой.

Более того, это не обязательно. Все, что вы делаете, это выбрать некоторую детализацию, скажем, каждую минуту или 5 минут или 10 минут. Вы говорите пользователям, что они могут запланировать его до этого уровня. Дайте им несколько вариантов от каждого месяца до каждых 5 минут. Независимо от того, что они выбирают, напишите его в базу данных.

Затем запустите разный PHP-скрипт каждые 1, 5 или 10 минут (независимо от минимальной степени детализации) и посмотрите, как он работает с базой данных, чтобы увидеть, есть ли что-нибудь для запуска, выполнения или отправки.

Yup Возможно, но на совместном хостинге это повлияет как на ваши, так и на другие сайты на этом хосте.

Так что, если ur-файл часто не вызывается cron, тогда удобно размещать cron на общем хосте, но если вам нужно часто его вызывать, тогда это не рекомендуется, вы также можете быть выброшены вашим провайдером, так как никто не хочет, чтобы сайт недоиспользование из-за другого веб-сайта.