Почему при отправке формы на почту приходят неформатируемые данные?

275
09 февраля 2017, 02:51

Интересует вопрос: почему при отправке формы на почту приходят данные в неформатируемом виде (в одну строчку) и как это исправить?

<?php
// check if fields passed are empty
if(empty($_POST['name']) || empty($_POST['message']) || empty($_POST['email']))
   {
echo "Не переданы данные!";
return false;
   }
$name = $_POST['name'];
$message = $_POST['message'];
$email = $_POST['email'];
// create email body and send it 
$to = 'aomeone@some.ru'; // put your email
$email_subject = "Вопрос с сайта some.ru";
$email_body = "Заполнена форма \"Задать вопрос\" \n\r".
 "Данные отправителя\r\nИмя: $name\r\n".
 "Email: $email \r\n".
 "Вопрос: $message";
$headers  = "Content-type: text/html; charset=utf-8 \r\n";
$headers .= "From: info@some.ru \r\n";
$headers .= "Reply-To: $email"; 
mail($to, '=?UTF-8?B?'.base64_encode($email_subject).'?=',$email_body,$headers);
return true; 
?>
Answer 1

Редактируйте тело письма тегами, вы же отправляете html. и не зачем кодировать сабж.

$name = $_POST['name'];
$message = $_POST['message'];
$email = $_POST['email'];
$to = 'kkorushkin@gmail.com'; // put your email
$email_subject = "Вопрос с сайта some.ru";
$email_body = "Заполнена форма \"Задать вопрос\" <br/>".
"Данные отправителя<br/>Имя: $name<br/>".
"Email: $email <br/>".
"Вопрос: $message";
$headers  = "Content-type: text/html; charset=utf-8 \r\n";
$headers .= "From: info@some.ru \r\n";
$headers .= "Reply-To: $email";
mail($to,$email_subject,$email_body,$headers);

READ ALSO
Почему не идет выборка из базы?

Почему не идет выборка из базы?

ЗдравствуйтеЕсть таблица prod , в ней ячейка id_specz , в которой значение 3,2,1

293
Инвертировать запрос

Инвертировать запрос

Есть регулярное выражение вида

280
Обновление текста при нажатии checkbox

Обновление текста при нажатии checkbox

Есть код обновления адресной ссылки по нажатию на checkbox

276