Как отправить в определенный день в php? - PullRequest
2 голосов
/ 27 мая 2009

Я хочу электронные открытки или что-то в этом роде. Пользователь может выбрать электронные открытки, после того, как он выбран, он должен ввести некоторые поля, такие как имя (от и до), адрес электронной почты (от и до), сообщение, и я хочу позволить пользователю выбрать, какую дату отправлять электронные карты .

Как отправить электронные открытки в определенный день? Мне нужно написать сценарий, который запускается каждый новый день? Как это сделать? Извините, я новичок в php ... (но не новичок, как даже не знаю, как выполнить запрос MySQL, получить сообщение от URL и т. Д.)

Ответы [ 4 ]

9 голосов
/ 27 мая 2009

Да, вам нужен скрипт, который запускается каждый день. (Запрет на нелепые маневры, такие как попытка подделать это путем проверки веб-запросов.) Обычный способ сделать это в контексте Unix называется cron job ; Если ваш хостинг-провайдер работает на Unix, вам следует изучить, что они предоставляют для того, чтобы сделать доступными для вас задания cron. В Windows есть параллельная служба, называемая запланированными задачами.

2 голосов
/ 27 мая 2009

Подобный вопрос обсуждался здесь reset-a-mysql-field-value-без-пользовательского исполнения

Я просто повторю: есть также веб-сервисы cron. Это может пригодиться, если у вас есть только план общего хостинга и вы не можете добавлять задания cron. Они будут вызывать URL с регулярным интервалом, который вы можете установить. Обычно очень дешево. (В любом случае дешевле, чем перейти на сервер корневого доступа.)

Просто поищите в Google веб-cron

чао! / 0

2 голосов
/ 27 мая 2009

Это для * nix. Допустим, у вас есть php-скрипт, который отправляет электронную почту в определенный день под названием mailer.php

<?php
    //mailer.php
    if (date("m/d/Y") == "06/02/2009") {
        mail("client@email", "Subject", "Body");
    }
?>

Мы предполагаем, что у вас уже работает демон cron в фоновом режиме.

Если у вас есть root-доступ к вашему компьютеру, то настроить задание cron просто, как редактировать файл.

Откройте файл / etc / crontab и добавьте следующую задачу:

1 14 * * * root php /path/to/your/scrip/mailer.php

Это означает, что в качестве пользователя root скрипт mailer.php будет запускаться ежедневно в 14:01. Вы можете изменить номера на любое другое.

0 голосов
/ 27 мая 2009

Это как-то сложно. Сначала это зависит от вашей системы. Если это Linux / BSD / Unix / Solaris, то эта удобная утилита называется cron Если вы используете Windows, у вас есть Запланированные задачи . Ежедневно запускайте сценарий (или по своему желанию) и проверяйте, какие карты вы должны отправить сегодня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...