Проблема с бесплатным SMTP-сервером в коде php - PullRequest
0 голосов
/ 26 марта 2010

Я написал PHP-код для использования, чтобы связаться с нами форма

но я не могу найти бесплатный SMTP-сервер для его использования.

Я пытаюсь использовать SMTP-сервер для Gmail, но обнаружил эту ошибку.

Предупреждение: mail () [function.mail]: "sendmail_from" не установлен в php.ini или пользовательский заголовок "From:" отсутствует в C: \ www \ htdocs \ contactUs.php на линии 25"

строка 25:

mail ($to,$subject,$body,$headers);

оператор, указывающий на использование SMTP-сервера Gmail:

ini_set("SMTP","smtp.gmail.com");

ТАК, ты можешь мне помочь? :(

1 Ответ

0 голосов
/ 30 апреля 2010

Вам нужен заголовок From: [VALID EMAIL] сообщения при отправке сообщения. Попробуйте сделать что-то вроде этого:

$headers = array(
    'From: me@example.com',
    'Mime-Type: text/plain; charset=utf-8',
);

$dest = 'some_user@example.com';
$subj = 'test';

$message = 'hello world';

mail($dest, $subj, $message, implode("\r\n", $headers));

Кроме того, функция mail предназначена для использования в качестве внешнего интерфейса для почтового демона, который работает на том же сервере, на котором работает веб-сервер. Поскольку большинство * NIX-боксов имеют и то и другое, оно обычно работает.

Однако я бы не советовал использовать какой-либо удаленный сервер для отправки вашей почты. Гораздо эффективнее и надежнее (не говоря уже о том, чтобы выглядеть более профессионально) просто посылать сообщение тому же серверу, что и тот, который сгенерировал сообщение.

Настройка собственного SMTP-сервера проста и бесплатна, а также более гибкая, чем Gmail. Gmail НЕ БУДЕТ отправлять сообщения, заголовок From: которых не совпадает ни с адресом основной учетной записи, ни с подключенным адресом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...