使用 php 从 Hotmail 发送电子邮件
Send email from Hotmail using php
我需要使用 php 发送电子邮件。这是我的代码:
$to= "dear-angel@hotmail.fr";
$subject = "demande d'intervention";
$message = "<h1>Demande d'intervention<h1>
Bonjour,<br>
il y a une urgence et on souhaite votre intervention docteur <br>";
$headers = 'From: DRIF <dear-angel@hotmail.fr>' . "\r\n" .
'Reply-To: dear-angel@hotmail.fr' . "\r\n" .
'Content-Type: text/html; charset="iso-8859-1"' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
这是我配置 php.ini 文件的方式:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = "smtp.live.com"
; http://php.net/smtp-port
smtp_port = 587
username="dear-angel@hotmail.fr"
password="blablabla"
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = "dear-angel@hotmail.fr"
我收到此错误消息:
SMTP server response: 550 5.7.3 Requested action aborted; user not authenticated
我尝试连接到我的 hotmail 帐户,但没有发现任何最近的活动,所以我可以确认是我本人。
我听说我必须使用 php 邮件程序,但我不知道如何使用它
你能帮帮我吗?提前致谢
Hotmail比端口号。将是 587,主机将是 smtp.live.com
详情请参考下方link:
http://www.technonutty.com/2013/08/send-email-through-php-webapplication.html
简单的答案是 "you're doing it wrong"。直接调用 mail()
几乎总是错误的。构建和发送电子邮件确实很难正确完成,因此请使用像 PHPMailer 这样的库来为您完成。
Windows上的常见问题是您通常没有本地邮件服务器,因此邮件功能根本不起作用。一些库(包括 PHPMailer)包含一个 SMTP 客户端,它可以直接发送消息而不需要本地邮件服务器。这并不总是一个好主意,因为 SMTP 不适合交互式使用(例如在 HTML 页面加载期间),但它可能是您可以使用的全部。
Windows 类似 WAMP 的部署堆栈提供了自己的邮件服务器。
您会发现 PHPMailer 提供了大量示例 - 只需更改它们的设置即可与您的配置一起使用。如果你遇到困难,这里有很多文档、自述文件、帮助 wiki 和生成的 API 文档,还有大量关于 SO 的问题和答案(在 PHPMailer 标签下查看)。
它现在可以使用 GMAIL 帐户,这是我的代码:
<?php
require "C:\wamp\www\PHPMailer-master\PHPMailerAutoload.php";
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPAuth = true; // authentication enabled
$mail->Host = "smtp.gmail.com";
$mail->Port = 587; //465; // or 587
$mail->Username = "eadhun@gmail.com";
$mail->Password = "blabla";
$mail->SetFrom("eadhun@gmail.com");
$mail->Subject = "DEMANDE d'intervention";
$mail->Body = "Bonjour, il y a une urgence et on souhaite votre intervention docteur ";
$mail->AddAddress("eadhun@gmail.com");
if(!$mail->Send())
{
echo "Mailer Error";
}
else
{
echo "Message has been sent";
}
?>
谢谢大家的帮助:)
我需要使用 php 发送电子邮件。这是我的代码:
$to= "dear-angel@hotmail.fr";
$subject = "demande d'intervention";
$message = "<h1>Demande d'intervention<h1>
Bonjour,<br>
il y a une urgence et on souhaite votre intervention docteur <br>";
$headers = 'From: DRIF <dear-angel@hotmail.fr>' . "\r\n" .
'Reply-To: dear-angel@hotmail.fr' . "\r\n" .
'Content-Type: text/html; charset="iso-8859-1"' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
这是我配置 php.ini 文件的方式:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = "smtp.live.com"
; http://php.net/smtp-port
smtp_port = 587
username="dear-angel@hotmail.fr"
password="blablabla"
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = "dear-angel@hotmail.fr"
我收到此错误消息:
SMTP server response: 550 5.7.3 Requested action aborted; user not authenticated
我尝试连接到我的 hotmail 帐户,但没有发现任何最近的活动,所以我可以确认是我本人。 我听说我必须使用 php 邮件程序,但我不知道如何使用它
你能帮帮我吗?提前致谢
Hotmail比端口号。将是 587,主机将是 smtp.live.com
详情请参考下方link: http://www.technonutty.com/2013/08/send-email-through-php-webapplication.html
简单的答案是 "you're doing it wrong"。直接调用 mail()
几乎总是错误的。构建和发送电子邮件确实很难正确完成,因此请使用像 PHPMailer 这样的库来为您完成。
Windows上的常见问题是您通常没有本地邮件服务器,因此邮件功能根本不起作用。一些库(包括 PHPMailer)包含一个 SMTP 客户端,它可以直接发送消息而不需要本地邮件服务器。这并不总是一个好主意,因为 SMTP 不适合交互式使用(例如在 HTML 页面加载期间),但它可能是您可以使用的全部。
Windows 类似 WAMP 的部署堆栈提供了自己的邮件服务器。
您会发现 PHPMailer 提供了大量示例 - 只需更改它们的设置即可与您的配置一起使用。如果你遇到困难,这里有很多文档、自述文件、帮助 wiki 和生成的 API 文档,还有大量关于 SO 的问题和答案(在 PHPMailer 标签下查看)。
它现在可以使用 GMAIL 帐户,这是我的代码:
<?php
require "C:\wamp\www\PHPMailer-master\PHPMailerAutoload.php";
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPAuth = true; // authentication enabled
$mail->Host = "smtp.gmail.com";
$mail->Port = 587; //465; // or 587
$mail->Username = "eadhun@gmail.com";
$mail->Password = "blabla";
$mail->SetFrom("eadhun@gmail.com");
$mail->Subject = "DEMANDE d'intervention";
$mail->Body = "Bonjour, il y a une urgence et on souhaite votre intervention docteur ";
$mail->AddAddress("eadhun@gmail.com");
if(!$mail->Send())
{
echo "Mailer Error";
}
else
{
echo "Message has been sent";
}
?>
谢谢大家的帮助:)