Intereting Posts
Форма не отображается правильно на правильной странице при использовании JS window.open () и submit (), чтобы открыть новое окно при нажатии кнопки и передать данные через POST Скопируйте большие файлы (более 2 ГБ) в PHP Xampp 1.7.4 и PHP 5.3.5 (устаревшие предупреждения) Как я могу отобразить отформатированную дату из метки времени Unix в twig? Как сделать таблицу, подобную этой, с помощью FPDF с помощью PHP? Как отправить файл inline в браузер, используя php с TCPDF Как я могу поместить результаты подготовленного оператора MySQLi в ассоциативный массив? Как использовать API-интерфейс mediawiki для создания таблицы для вики-страницы в PHP Zend Controller Action, получить помощника в другом классе? crontab при использовании сценария exec php? Связывание блога WordPress с CodeIgniter View Как использовать Doctrine «пусто» в выражении? jQuery webcam plugin – как сделать более крупным изображения? В сценарии PHP настройки выходного буфера игнорируются сервером PHP Печать неопределенного дерева категорий

Функция php mail отправляется прямо в папку нежелательной почты

Я создал контактную форму с базовыми полями. Форма отправляется владельцу сайта и отправляется клиенту, отправившему форму. Функция работает, но все равно отправляет сообщение в папку нежелательной почты. Что-то не так с моими заголовками или это просто настройки нежелательной почты hotmails.

$headers = "MIME-Version: 1.0rn"; $headers .= "Content-type: text/html; charset=iso-8859-1rn"; $headers .= "From: contact@mysite.com\r\n"; mail($to, $subject, $message, $headers)or die("mail error"); 

Сообщение – это электронные письма в формате HTML, только более удобный способ отображения сообщения. Также в моей учетной записи электронной почты вместо отображения моего из varable он говорит: «CGI Mailer» – запутанный.

UPDATE – больше не работает

 //mail customer $from = 'donotreply@mysite.co.uk'; $subject = 'Your message has been recieved.'; $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= 'From: My Site <'.$from.'>' . "\r\n"; $msg = ' <html> <head> <link href="http://linktocss/.../etc" rel="stylesheet" type="text/css" /> </head> <body> formatted message... </body> </html> '; mail($email, $subject, $msg, $headers)or die("mail error"); 

Related of "Функция php mail отправляется прямо в папку нежелательной почты"

редактировать

Это сработало для меня и не попало в SPAM / Junk, но в моей папке «Входящие».

 <?php //mail customer $from = 'donotreply@mysite.co.uk'; $to = "email@example.com"; $subject = 'Your message has been received.'; $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= "From: The Sending Name <$from>\r\n"; $msg = ' <html> <head> <link href="http://linktocss/.../etc" rel="stylesheet" type="text/css" /> </head> <body> formatted message... </body> </html> '; mail($to, $subject, $msg, $headers)or die("mail error"); ?> 

Сноски: Я заметил, что вы используете внешнюю таблицу стилей. Многие службы электронной почты, такие как Google, не будут их отображать. Лучше всего использовать inline styling для достижения лучших / желаемых результатов.


Оригинальный ответ

Причина ( по всей вероятности ) (в соответствии с вашим опубликованным кодом), почему ваша почта попадает в СПАМ, заключается в том, что ваши заголовки недействительны.

У вас rn сгруппированы вместе, вместо использования \r\n

Используйте это вместо этого:

 $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= "From: contact@mysite.com\r\n"; mail($to, $subject, $message, $headers)or die("mail error"); 

Или еще лучше, используйте: Как взято из функции PHP website's mail() function

 $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= "From: contact@mysite.com\r\n"; mail($to, $subject, $message, $headers)or die("mail error"); 

В настоящее время почтовые клиенты и серверы выполняют массивные проверки на сервере отправки электронной почты, например, обратном DNS-поиске, Graylisting и whatevs. Все эти тесты потерпят неудачу с помощью функции php mail (). Если вы используете динамический ip, это еще хуже.

Используйте PHPMailer-Class и настройте его для использования smtp-auth вместе с хорошо настроенным выделенным SMTP-сервером (либо локальным, либо удаленным), и ваши проблемы исчезли.