使用xampp

时间:2019-03-14 16:02:25

标签: php email xampp localhost

我正在尝试将邮件发送到来自本地主机的特定电子邮件ID。

我读过this this以及其他一些帖子,但这并不能解决我的问题。

现在我具有以下配置:

PHP.ini

[mail function]
; *For Win32 only*.
; http://php.net/smtp
SMTP=smtp.gmail.com
; http://php.net/smtp-port
smtp_port=587
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = mypersonal@gmail.com

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

SENDMAIL.ini

smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=mypersonal@gmail.com
auth_password=my above email password
force_sender=mypersonal@gmail.com

** PHP代码是**

$to = "someFriend@gmail.com";
$subject = "HTML email";

$message = "
<html>
<head>
<title>HTML email</title>
</head>
<body>
<p>This email contains HTML Tags!</p>
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
</tr>
</table>
</body>
</html>
";

// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";

// More headers
$headers .= 'From: <mypersonal@gmail.com>' . "\r\n";


$check = mail($to,$subject,$message,$headers);
if($check == true){
    echo "successfully mail Sent";
}
else{
    echo "Email sending Failed";
}

我得到Email sending failed,此配置或代码有什么问题吗? 我还允许我的Gmail使用不太安全的应用程序

对于邮件发送给其他人的位置,我也感到困惑。

请帮助! 谢谢

1 个答案:

答案 0 :(得分:0)

Gmail默认情况下不允许这样做。检查您的Google帐户设置,并允许访问安全性较低的应用。或生成应用专用密码并在此处使用。