PHP получатель формы отправки электронной почты не получает правильный адрес электронной почты sendr

Я пытаюсь выяснить проблему с PHP-кодом для отправки формы, im для моего друга. Он отправляет электронные письма, но проблема в том, что получатель получает очень странный адрес электронной почты. Я прикрепляю изображение, чтобы посмотреть ближе.

Мой PHP-код:

<?php $error = false; $sent = false; if(isset($_Post['name'])) { if(empty($_Post['name']) || empty($_Post['email']) || empty($_Post['comments'])) { $error = true; } else { $to = "linardsberzins@gmail.com"; $name = trim($_Post['name']); $email = trim($_Post['email']); $comments = trim($_Post['comments']); $subject = "Contact Form"; $messages = "Name: $name \r\n Email: $email \r\n Comments: $comments"; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= "From:" . $name . "\r\n"; $mailsent = mail($to, $subject, $messages, $headers); if($mailsent) { $sent = true; } } } ?> 

Большое спасибо отображается нечетная электронная почта

Это должно быть как Sender <HIS@EXAMPLE.COM> :

  $headers .= 'From: '.$name.' <'.$email.'>' . "\r\n"; 

Попробуйте добавить заголовки к электронной почте, например, из PHP mail. Пример руководства 2

 <?php $to = 'nobody@example.com'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers); ?> 

Если вы хотите, чтобы это было по электронной почте с именем, это сработало бы

 $headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n"; 

Добавьте это в свои заголовки

 $headers .= "Reply-To: $replyEmail\r\n"; 

Заголовок From: должен содержать адрес электронной почты, а также имя, что-то вроде

 "From:My Display Name<mydisplayname@gmail.com>\r\n" 
 <?php $error = false; $sent = false; if(isset($_Post['name'])) { if(empty($_Post['name']) || empty($_Post['email']) || empty($_Post['comments'])) { $error = true; } else { $to = "linardsberzins@gmail.com"; $name = trim($_Post['name']); $email = trim($_Post['email']); $comments = trim($_Post['comments']); $subject = "Contact Form"; $messages = "Name: $name \r\n Email: $email \r\n Comments: $comments"; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From: '.$name.' <sender@example.com>' . "\r\n"; $mailsent = mail($to, $subject, $messages, $headers); if($mailsent) { $sent = true; } } } ?> 

Попробуй это. просто измените заголовок.

 $headers .= 'From: '.$name.' <sender@example.com>' . "\r\n"; 

Привет. Это не было ошибкой. Если вы предоставили SENDER EMAIL тогда вместо него будет отображаться адрес электронной почты отправителей. В противном случае это займет наш адрес хостинга.