如何从PHP发送电子邮件到Outlook 2010

时间:2015-04-04 13:24:11

标签: php mysql

我正在开发一个基于网络的系统,我想从网站向系统最终用户发送通知电子邮件。在我的生活中,我没有这样做,所以我搜索了一下,然后我就这样做了:

<?php

$dbhost="xxx";
$dbuser="xxx";
$con = mysql_connect($dbhost,$dbuser, "");
if (!$con) 
{
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('xxx');

require_once('libs/phpMailer/PHPMailerAutoload.php'); 
$m = new phpMailer;
$m->isSMTP();
$m->SMTPAuth = true;
$m->SMTPDebug = 2;

$m->Host = 'smtp-mail.outlook.com';
$m->Username = 'xxx';
$m->Password = 'xxx';
$m->SMTPSecure = 'ssl';

$m->Port = 587;
$m->From = 'xxx';
$m->FromName = 'xxx';
$m->addReplyTo('xxx','Reply Address');
$m->addAddress('xxx','xxx');
$m->addCC('xxx','xxx');
$m->addBCC('xxx','xxx');
$m->Subject = 'Subject';
$m->Body = 'This is the body';
$m->AltBody = 'This is the body';
var_dump($m->send());
if ($m->send())
{
    echo "success";
}
else 
{
    echo $m->ErrorInfo;

}

?>

我收到此错误:SMTP connect()失败。

主机,用户名,密码和端口到底应该是什么?

2 个答案:

答案 0 :(得分:1)

可以从电子邮件提供商处获取主机和端口。用户名和密码是您的电子邮件和密码,例如:

对于GMAIL:假设我的电子邮件ID为 xyz@gmail.com ,密码为 1709

$m->Host = 'smtp.gmail.com';
$m->Username = 'xyz@gmail.com';
$m->Password = '1709';
$m->Port = 587;

您可以在自己喜欢的搜索引擎中搜索任何电子邮件提供商的设置,例如“Outlook SMTP设置”,“Yahoo SMTP设置”等。

答案 1 :(得分:0)

SMTP服务器的设置如主机,用户名,密码和端口需要在上面的代码中设置。可以从服务器管理员处获取相同的内容。

或者您可以使用PHP mail()函数。示例代码如下:

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

mail($to, $subject, $message, $headers);
?>

希望这有帮助。

由于