У меня есть столбец (с именем user_email) в таблице с именем (событие) в моей базе данных, этот столбец имеет адреса электронной почты. Я хочу получить все эти адреса электронной почты и отправить одно письмо для всех них.
Я пытался использовать for for lolo, но он отправлял электронное письмо только на одно электронное письмо, возможно, я неправильно использовал для любого предложения,
Часть моего кода
$select="SELECT * FROM event WHERE event_title='$title'";
$query_select= mysql_query($select);
$row = mysql_fetch_array($result);
$email_to=$row["user_email"];
for($x=0;$x<count($row['user_email']);$x++){
@mail($email_to,$email_subject,$email_message,$header);}
Вы сделали это более сложным, чем нужно. Просто просмотрите результаты и отправьте электронное письмо:
$select="SELECT * FROM event WHERE event_title='$title'";
$result = mysql_query($select);
while ($row = mysql_fetch_array($result)) {
mail($row['user_email'],$email_subject,$email_message,$header);
}
Вы действительно должны улучшить это, так как вы не проверяете почтовые ошибки (и даже скрываете, что PHP пытается вам рассказать).
Пожалуйста, не используйте mysql_*
функции в новом коде. Они больше не поддерживаются и официально устарели. Увидеть красная коробка? Узнать о готовые заявления вместо этого и использовать PDO или же MySQLi — Эта статья поможет вам решить, какой. Если вы выбираете PDO, вот хороший урок.
Тебе необходимо while
петля. Таким образом, он перебирает все строки в вашем наборе результатов. Я должен был угадать имена ваших столбцов, так что вам, скорее всего, придется это исправить.
while($row = mysql_fetch_assoc($query_select)) {
@mail($row['email_to'],$row['email_subject'],$row['email_message'],$header);
}