Как я могу контролировать время жизни электронной почты (время передачи) с помощью PHP Simple Mail? - PullRequest
0 голосов
/ 30 марта 2009

Я использую Simple Mail из PHP. Теперь у меня есть намерение узнать время жизни электронного письма.

Если пользователь желает отправить электронное письмо через день после отправки формы, как я могу добиться этого в PHP?

$headers =  'From: '.$Name.''. "\r\n" .
    'Reply-To: '.$_POST['email'].'' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
$subject = "Subject";
$message = "Message";       
mail($to, $subject, $message, $headers);

Нужно ли включать заголовок?

Ответы [ 4 ]

2 голосов
/ 30 марта 2009

Что бы вы сделали, это укажите время отправки электронного письма. Сохраните это с электронной почтой, темой, сообщением и заголовками в базе данных.

Затем создайте cronjob, который проверяет базу данных каждые несколько минут, чтобы увидеть, следует ли отправлять какие-либо электронные письма. Если это так, этот файл PHP (который выполняет cronjob) отправит электронное письмо.

1 голос
/ 31 марта 2009

Как уже говорили другие, вы захотите поместить почту в базу данных, а затем отправить оттуда. Pear Mail_Queue очень прост в использовании, и вы можете запускать процесс отправки по своему желанию или, что лучше, с помощью некоторого задания cron (или поддерживать его работу, с некоторыми 'sleep (10)', если хотите). отправить его почти как только будет достигнуто время).

1 голос
/ 30 марта 2009

Не думаю, что у вас есть способ установить дату доставки сообщения при отправке сообщения.

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

Время жизни письма отличается. Например, если вы отправили электронное письмо и по какой-то причине, если сообщение не было доставлено, оно будет поставлено в очередь. И через некоторое время сервер попытается доставить сообщение, и все же, если оно не сможет доставить сообщение, сервер удалит письмо.

0 голосов
/ 30 марта 2009

Возможно, вам следует хранить свои электронные письма в базе данных. Затем вы можете отправлять электронные письма с помощью периодических сценариев (cron и т. Д.).

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