Я пытаюсь отправить электронную почту на несколько адресов электронной почты, используя php mailer, но не работает. Я попытался взорвать адреса, но ничего не работает. вот мой код
HTML:
<input type="text" name="addresses" value="{$addresses}"/>
текущий вывод во входном файле – test1 @ gmail.com, test2 @ gmail.com, test3 @ gmail.com,
php для отправки электронной почты:
/* Get Customer info*/ $sql = mysql_query("SELECT * FROM customer WHERE ID='$id' LIMIT 1"); $sql=mysql_fetch_array($sql); $fname=$sql['FIRST_NAME']; $lname=$sql['LAST_NAME']; $company=$sql['COMPANY']; $customer_email=$sql['EMAIL']; $email_addresses=$VAR['addresses']; if($email_addresses != "" && $customer_email !=""){ $emailto=$email_addresses; }elseif($email_addresses == "" && $customer_email !=""){ $emailto=$customer_email; } /* Get Email Options */ $r=mysql_query("SELECT * FROM `email` WHERE `ID`=1"); $r=mysql_fetch_array($r); $emailfrom=$r['EMAIL_FROM']; $emailpriority=$r['EMAIL_PRIORITY']; $emailsubject=$r['EMAIL_SUBJECT']; /* Headers */ $subject = "$emailsubject"; $mailer = "$emailfrom"; $headers = "From: $mailer \r\n"; $headers .= "Reply-To: $mailer\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n boundary=\"PHP-mixed- ".$random_hash."\""; $headers .= "Importance: $emailpriority\r\n"; $email = new PHPMailer(); $email->From = $mailer; $email->FromName = $mailer; $email->Subject = $subject; $email->Body = $message; $email->AddAddress( $emailto ); $email->isHTML(true); $email->Send();
поэтому, если у меня есть один получатель в поле ввода, он отправляет письмо в порядке, но если у меня есть несколько и их разделить, он не отправляет электронное письмо. Я пробовал $ emailto = explode (',', $ email_addresses); так как я отделяю письмо, но это не работает. любое предложение было бы замечательным.
Предположим, что у вас есть хорошие данные в переменной $ email_addresses.
Вам нужно изменить строку:
$email->AddAddress( $emailto );
в:
$addr = explode(',',$email_addresses); foreach ($addr as $ad) { $email->AddAddress( trim($ad) ); }
Это было задано ранее, см. Здесь: URL-адрес почтовой программы PHP
фрагмент кода:
Вам нужно вызвать метод AddAddress
один раз для каждого получателя.
1- взрыват вернет массив адресов электронной почты say $ emailto
2-loop этот массив и используйте метод AddAddress:
foreach($emailto as $address){ $email->AddAddress($address,[optional:: name]); }