Проблема при отправке электронной почты в php - PullRequest
0 голосов
/ 17 сентября 2011

Я сталкиваюсь со странной ошибкой, когда выполняю почтовый скрипт php. Связанный с сервером не смог проверить отправителя. Я вижу следующую ошибку:

Не удалось добавить получателя email@domain.com [SMTP: Неверный код ответа получен от сервера (код: 550, ответ: не удалось выполнить проверку для неуправляемый адрес Сендору не удалось подтвердить)]

Знаете ли вы, почему может появиться эта ошибка?

 <?php
require_once "Mail.php";
$kw = (string)$_GET['keyword'];
$e = (string)$_GET['emailid'];
$uname="xxx";
$password="xxx";
$con=mysql_connect("Localhost","root","");
if(!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("mysql_db",$con);

 mysql_query("INSERT INTO mail_alert       (uname,emailid,password,keyword)values('$kw','$e','$uname','$password')");



 $from = "mail.domain.com";
 $to = $e;
 $subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "ssl://domain.com";
$port="465";
$username = "login";
$password = "xxx";

$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp =Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));

$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}


 mysql_close($con);

?>

1 Ответ

2 голосов
/ 17 сентября 2011

Здесь вы пытаетесь отправить электронное письмо, поскольку вы являетесь владельцем / пользователем domain.com.

Если вы хотите отправить электронное письмо через PHP, вы должны предоставить действительные учетные данные некоторого почтового сервера. Вы можете создать почтовый сервер самостоятельно на своей машине, но это требует определенных усилий. Ну, в UNIXes это проще, в Windows вам нужно загрузить какое-то программное обеспечение, например hMailServer .

Более простым решением может быть создание учетной записи в какой-либо сторонней службе, например Gmail .

Итак, создайте учетную запись Gmail.com, и здесь у вас есть данные конфигурации для настройки в вашем скрипте (SMTP-адрес, номер порта; имя пользователя и пароль - учетные записи Gmail).

SMTP: smtp.gmail.com
Port for TLS/STARTTLS: 587
Port for SSL: 465 
User name: your Gmail email address
Password: your Gmail password

Этот пример может быть полезным.

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