Доброго времени суток. Помогите советом или мануалом в решении следующей проблемы. Есть массив с данными из БД (почтовые ящики), надо организовать рассылку с помощью функции mail() Как мне сделать так что бы данные из массива передавались в переменную $mailto (кому) и сделать задержку во времени между каждым письмом. Текст письма и отправитель для всех получателей один.
Задержку письма можно в цикле sleep'ом сделать, а массив данных, как пример хотя-бы одну запись надо увидеть, в каком формате массив
Ну вот например по совету Waki <? $freq=date("N"); //get email address's $result = mysql_query("SELECT * FROM email_list "); while($row = mysql_fetch_array($result)) { if($row['period']=="daily"){ $to=$row['name']." <".$row['email'].">\r\n"; $subject="Your exchange rate update"; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .="To: ".$row['name']." <".$row['email'].">\r\n"; $headers .= "From: ME <[email protected]>" . "\r\n"; mail($to, $subject, $email, $headers); } if($row['period']==$freq){ $to=$row['name']." <".$row['email'].">\r\n"; $subject="Your exchange rate update"; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .="To: ".$row['name']." <".$row['email'].">\r\n"; $headers .= "From: name <[email protected]>" . "\r\n"; mail($to, $subject, $email, $headers); } } ?> Только вот не пойму что значит эта строка if($row['period']=="daily"){ а именно - "daily"?
Упростил я немного код, письма уходят нормально. Может кому пригодится. <? $host='localhost'; $database='база'; $user='юзер'; $pswd='пароль'; mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL."); mysql_select_db($database) or die("Не могу подключиться к базе."); $freq=date("N"); $result = mysql_query("SELECT * FROM TABLE1"); while($row = mysql_fetch_array($result)) { $emailto = $row['email']; $subject = "Поздравляем!"; //тема сообщения $message = "ТЕКСТ СООБЩЕНИЯ"; $emailfrom = "от_кого@mail.com"; $chek = mail($emailto, $subject, $message, "From:".$emailfrom); if($chek) echo "Ваше письмо успешно отправлено!))))))))))))))))))))))))))))))))))))"; else echo "Ваше письмо не отправлено!((("; } ?>