我正在使用Windows 7和xampp 1.8(打开水银邮件)并尝试使用gmail id从localhost发送电子邮件。但它不起作用。继承我的email.php:
<?php
$to="receiver.email@gmail.com";
$subject='the subject';
$message="dfdgh";
$headers='From:my.email@gmail.com'."\r\n".'Host:ssl://smtp.gmail.com'."\r\n".'Port:465'."\r\n".'Username:my.email@gmail.com'."\r\n".'Password:mypassword'."\r\n".'Reply-To:my.email@gmail.com'."\r\n".'X-Mailer:PHP/'.phpversion();
mail($to, $subject, $message, $headers);
?>
并且我改变了我更改的localhost php smtp配置
;SMTP = localhost
;smtp_port = 25
SMTP =ssl://smtp.gmail.com
smtp_port = 465
; For Win32 only.
;http://php.net/sendmail-from
;sendmail_from = postmaster@localhost
ssl://smtp.gmail.com
sendmail_from = my.email@gmail.com
执行代码但没有收到任何电子邮件后,我没有收到任何错误消息。
我做错了什么?
-Thanks。
答案 0 :(得分:0)
Gmail SMTP已停止使用465
和SSL
,因此请使用以下配置。
在它完美运行之前,现在它正在下面的配置。
SMTP =tls://smtp.gmail.com
smtp_port = 587
tls://smtp.gmail.com
使用587
SMTP_PORT
并使用TLS
。
如果它不起作用,请将SMTP = tls
行替换为SMTP = aspmx.l.google.com
答案 1 :(得分:0)
首先在
中调试它mail($to, $subject, $message, $headers);
尝试写下条件以查看邮件是否正在发送
if(mail($to, $subject, $message, $headers)){
echo 'Success';
}
else{
echo 'Failed';
}