У меня был скрипт, который отправляет sms-оповещения каждый день. Я хочу, чтобы он автоматически отправлял sms, выбирая сообщение из базы данных. Могу ли я сделать это без cron. Есть ли другое решение. Помощь Plz
Вы можете использовать службу webcron для запуска вашего скрипта.
У вас есть внешний планировщик заданий для приложений AppEngine : используйте google AppEngine , это бесплатно . Внешняя «задача» может затем «вызвать» ваш PHP-скрипт.
Я не понимаю, что не так с помощью локальной cron
на вашей машине, хотя и не блокируется для вас.
Простыми словами, вы не можете запускать php-скрипты, не используя какой-то планировщик или cron …
У вас есть несколько вариантов:
Эмулировать поведение cron. В вашем php-коде проверьте, была ли загружена страница или близка к тому времени, когда вы планируете рассылку, если сообщения еще не были отправлены, загрузить сценарий, который отправляет сообщения в фоновом режиме и отметьте их как отправленные.
Как предложили другие, настройте cronjob где-нибудь еще, который выполнит скрипт на вашем сервере, извлекая URL-адрес через http (например, с помощью wget)
настройте задачу cron в другом месте, попросите сценарий, который отправляет предупреждения.
вы можете включить свой скрипт и запускать его каждый раз, когда кто-то посещает вашу домашнюю страницу / страницу входа и т. д. … настраивает таблицу в mysql, называемую временем. запрашивать базу данных каждый раз при посещении страницы. if (аргумент времени) {запустить сценарий в фоновом режиме, обновить новое время в БД}
Все, что вам нужно сделать, – это выяснить, как часто вы хотите отправлять свои sms-сообщения. Ex. 1 раз в день строка базы данных «время» имеет в ней дату. дата позволяет сказать 24 часа назад. если строка «время» db меньше или равна сегодняшнему минус один день 1 день, тогда запустите свой скрипт. это будет запускать ваш скрипт один раз в день.
Обратный путь -> кому-то нужно посещать ваш сайт по крайней мере один раз в день.
Что такое URL вашего сайта? Что делаешь?
Использование стороннего webcron, например easycron.com .
Если вы не можете настроить задание cron на сервере, сделайте это на клиенте, к которому у вас есть доступ (например, ваш компьютер), чтобы он выполнял запрос, когда вам нужен сценарий для запуска.
Это не оптимально, но без использования какого-либо планировщика вы можете это сделать.
Нижними сторонами этого является то, что:
Я использовал планировщик заданий Windows, чтобы запланировать сценарий на сервере, на котором раньше я не мог получить доступ к cron, это сработало нормально.
Это не лучший ответ, поскольку он все еще требует cron где-то , но вы всегда можете настроить другую машину, на которой есть cron, например, ваш домашний компьютер, чтобы попасть на страницу вашего сайта, которая запускает действие (используя библиотеку, такую как curl
или wget
).