массовая рассылка с php - PullRequest
       31

массовая рассылка с php

0 голосов
/ 29 августа 2018

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

<?php

require ("bdd.php");

$sql = "SELECT adresse FROM newsletter WHERE envoie='1';";
$result = mysql_query($sql);

while($row = mysql_fetch_array($result))
{
     $en_tete ='From: '. $row['adresse'] .''."\n";
     $en_tete .='Reply-To: adresse@fai.fr'."\n";
     $en_tete .='Content-Type: text/html; charset="iso-8859-1"'."\n";
     $en_tete .='Content-Transfer-Encoding: 8bit';
     $contenu ='<html><head><title>Envoie html</title></head><body><p>TEST !</p></body></html>';

     mail($row['adresse'], 'Envoie mail', $contenu,  $en_tete)
}

mysql_close();

?>

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете использовать PHPMAILER

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

========

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

, например

Добавить дополнительный столбец 'email_sent' в таблицу базы данных ...

и измените запрос на

$sql = "SELECT adresse FROM newsletter WHERE envoie='1' and email_sent='0' order by id desc limit 25"; 
 // Limit can be any...10 or 25 or 50 etc... this will limit total emails at a time...


//in while clause, add query to Update database >> `email_sent`=>1...

С помощью cronjob вы можете сбросить email_sent на 0 снова .... или с помощью простой ссылки на скрипт, который содержит запрос на сброс / обновление email_sent до 0 для всех 2000+ строк. .

Пожалуйста, избегайте mysql ...... Попробуйте Mysqli или PDO, а не ..

...