Отправить письмо с кодом PHP

Я пытаюсь отправить электронное письмо на PHP, написанное с помощью CKEditor или HTML. Когда отправляется электронное письмо, HTML-код появляется в письме, я знаю его, но заголовки уже пытались поставить огромные и ничего не работает.

Ниже мой код для отправки электронной почты.

function mail_users($titulo, $conteudo){ $query = mysql_query("SELECT `Email`, `Nome` FROM `utilizadores` WHERE `Newsletter` = 'Ativada'"); while (($row = mysql_fetch_assoc($query)) !== false){ $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; email($row['Email'], $titulo, "Olá " . $row['Nome'] . ",\n\n" . $conteudo, $header); } } 

Вы должны сделать это.

  • Переместите заголовок за пределы цикла while.
  • Вы совершаете ошибку в конкатенации.
  • Функция должна быть mail() вместо email() [ Если вы не написали обертку для того же ]

Правильный путь….

 function mail_users($titulo, $conteudo){ $query = mysql_query("SELECT `Email`, `Nome` FROM `utilizadores` WHERE `Newsletter` = 'Ativada'"); $header = "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; while (($row = mysql_fetch_assoc($query)) !== false){ mail($row['Email'], $titulo, "Olá " . $row['Nome'] . ",\n\n" . $conteudo, $header); } } 

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

и проверить

@mail ($ email, $ subject, $ message, $ headers);

последняя строка имеет все значения соответственно.

 function mail_users($titulo, $conteudo){ $query = mysql_query("SELECT `Email`, `Nome` FROM `utilizadores` WHERE `Newsletter` ='Ativada'"); while (($row = mysql_fetch_assoc($query)) !== false){ $header=''; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; @mail($row['Email'], $titulo, "Olá" . $row['Nome'] . ",\n\n" . $conteudo, $header); } } 

попробуй это

 function mail_users($titulo, $conteudo) { $header = "MIME-Version: 1.0\r\n"; $header .= "From: xyz@yourdomain.com"; $header .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; $query = mysql_query("SELECT `Email`, `Nome` FROM `utilizadores` WHERE `Newsletter` = 'Ativada'"); while($row = mysql_fetch_assoc($query)) { mail($row['Email'], $titulo, "Olá " . $row['Nome'] . ",\n\n" . $conteudo, $header); } }