php发送邮件不出去,PHP 用mail()发邮件始终不成功。该怎么解决

本文描述了一种使用PHP mail()函数发送邮件时遇到的问题及错误提示,并提供了通过使用PHPMailer库来替代原生mail()函数的解决方案。

PHP 用mail()发邮件始终不成功。

$to = "757006080@qq.com";

$subject = "Test mail";

$message = "Hello! This is a simple email message.";

$from = "757006080@qq.com";

$headers = "From: $from";

$send=mail($to,$subject,$message,$headers);

if($send)

echo "Mail Sent";

else

echo "Sorry,mail sent failed!"

?>

开发环境用的wamp,下载并安装好了sendmail程序,按网上的说法也改好了php.ini和sendmail.ini

使用foxmail 7.1创建了自己QQ邮箱的账户,开启了POP3/SMTP服务。更改发件服务器为POP3,使用和收件服务器相同的身份验证。结果还是报错:Warning: mail(): SMTP server response: 503 Error: need EHLO and AUTH first ! in F:\PHP\wamp\www\mail.php on line 8

不知道哪个地方不对,请会的人指教下。谢谢!!!

mail()

sendmail

QQ邮箱

分享到:

------解决方案--------------------

可以尝试phpmailer

$path = realpath(dirname(__FILE__)).'/../libraries/Mail.php';

include("$path");;

$mail= new Mail(); //建立新物件

$mail->IsSMTP(); //設定使用SMTP方式寄信

$mail->SMTPAuth = true; //設定SMTP需要驗證

$mail->SMTPSecure = "ssl"; // Gmail的SMTP主機需要使用SSL連線

$mail->Host = "smtp.gmail.com"; //Gamil的SMTP主機

$mail->Port = 465;  //Gamil的SMTP主機的SMTP埠位為465埠。

$mail->CharSet = "UTF-8"; //設定郵件編碼

$mail->Username = "onlyfortestlzz@gmail.com"; //設定驗證帳號

$mail->Password = "abcde"; //設定驗證密碼

$mail->From = "onlyfortestlzz@gmail.com"; //設定寄件者信箱

$mail->FromName = "工作人員"; //設定寄件者姓名

$mail->Subject = "PHPMailer 測試信件"; //設定郵件標題

$mail->Body = "你好";

//設定郵件內容

$mail->IsHTML(true); //設定郵件內容為HTML

$mail->AddAddress($this->input->post('backemail'), $value->username); //設定收件者郵件及名稱

if(!$mail->Send()) {

echo 'ok';

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值