Отправка электронной почты с помощью php - PullRequest
0 голосов
/ 28 ноября 2011

Я пытаюсь отправить почту с моего сайта. Но сейчас она не работает. Подскажите, пожалуйста, какие изменения я должен внести в файл конфигурации php.ini для достижения этой функциональности? Использование ОС Windows. Вот мой код для вашей справки.

     $to = "name@gmail.com";
     $subject = $subject;
     $body = $message;
     if (mail($to, $subject, $body)) {
           echo("<p>Message successfully sent!</p>");
     } else {
           echo("<p>Message delivery failed...</p>");
       } 

Ответы [ 3 ]

2 голосов
/ 28 ноября 2011

Windows не содержит sendmail, как это делает Linux.

Так что для Windows вы должны предоставить SMTP-сервер: http://www.geeklog.net/faqman/index.php?op=view&t=19

1 голос
/ 28 ноября 2011

Возможно, что-то не так, но для начала Руководство по PHP для mail() гласит:

При отправке почты, почта должна содержать заголовок От. Это можно установить с помощью параметра Additional_headers или по умолчанию в php.ini.

Если этого не сделать, появится сообщение об ошибке, подобное предупреждению: mail (): «sendmail_from» не задан в php.ini или отсутствует пользовательский заголовок «From:».

Вы не устанавливаете заголовок From в своем коде, так что это будет первое, что нужно проверить.

(также: $subject = $subject; нечетно.)

0 голосов
/ 28 ноября 2011

Попробуйте также настроить их.

           $headers = "MIME-Version: 1.0\r\n"; 
           phpini_set("sendmail_from", "info@mydomain.com"); // at the beginning of yoru script
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...