AendyOne
@AendyOne
Начинающий web программист

Как реализовать динамичные заголовки «To» в письме, через SMTP?

Всем привет. Такой вопрос.
Пишу скрипт отправки заявок на несколько почтовых ящиков через SMTP сервер Яндекса. Скрипт в целом функционирует нормально, но в заголовке "кому:" или "To:"не отображается адрес для кого предназначено письмо.
Подскажите как сделать динамическую подставку заголовка To из цикла foreach.
Собственно сам код:
<?php

require_once "SendMailSmtpClass.php"; // подключаем класс
 
$mailSMTP = new SendMailSmtpClass('adress@yandex.ru', 'xxxxxxxx', 'ssl://smtp.yandex.ru', 'Андрей', 465);

 /* Здесь проверяется существование переменных */
 if (isset($_POST['name'])) {$name = $_POST['name'];}
 if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
 if (isset($_POST['email'])) {$email = $_POST['email'];}
  

/* А здесь прописывается текст сообщения, \n - перенос строки */
 $mes = "Тема: Заказ звонка!\nИмя: $name\nТелефон: $phone\nEmail: $email";

$sub='Заказ с сайта'; //сабж subject предмет, тема 

// заголовок письма
$headers= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=utf-8\r\n"; // кодировка письма
$headers .= "From: Андрей <adress@yandex.ru>\r\n"; // от кого письмо
$headers .= "To: <$nam>\r\n"; // кому письмо

  
  $names = array("one@mail.ru", "two@gmail.com");
   foreach ($names as $nam){
	   $result =  $mailSMTP->send($nam, $sub, $mes, $headers); // отправляем письмо
   }
  
ini_set('short_open_tag', 'On');
header('Refresh: 0; URL=/ok');
?>
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ответы на вопрос 1
akelsey
@akelsey
Согласно официальной документации в команде send четвертым параметром он ожидает "@param string $smtp_from - отправитель. Массив с именем и e-mail" вида
$from = array(
    "Евгений", // Имя отправителя
    "test@vk-book.ru" // почта отправителя
);

А вы пытаетесь скормить ему хидеры...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы