作者backfish (121)
看板PHP
标题Re: [请益] 请教一各关於PHPMailer的问题
时间Thu Jul 23 18:51:35 2020
※ 引述《rjackie (向前走,才知道转角)》之铭言:
: 各位大大,小弟有一个小问题
: 因专案中有遇到PHPMailer+gmail发信的功能,在本机上可以正常的
: 发信,但是不知道为什麽上传到客户的主机就会发生
: Mailer Error: SMTP connect() failed.
: https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
: 的错误,以下是程式码还请各位能解惑
: ?>
: require_once('PHPMailer/PHPMailerAutoload.php');
: $mail= new PHPMailer();
: $mail->Host = "ssl://smtp.gmail.com";
: $mail->IsSMTP();
: $mail->SMTPAuth = true;
: $mail->SMTPSecure = "ssl";
: $mail->Port = 465;
: $mail->Username = "[email protected]";
: $mail->Password = "XXXXXXXX";
今天也遇到同样的问题,已解决
我是先在自己电脑上测试,
本来没办法寄出,
到gmail帐号的「安全性」页面把「低安全性应用程式存取权」设为「开启」就可以了
不过同样的程式上传到伺服器之後却无法顺利寄出,
按大家推文的说法,打电话填客服单给伺服器厂商,请求开防火墙的设定
防火墙权限开完之後,信件还是无法寄出,不过错误讯息有一些不同,
依着下面的网址去做帐号权限的设定就可以了,
包括:「启用两步骤验证功能」,以及最重要最关键的「产生及使用应用程式密码」
https://support.google.com/accounts/answer/185833?
hl=zh-Hant&ctx=ch_DisplayUnlockCaptcha
我们必须去产生一组「16位数代码」,然後套入到这个Password变数(Username不变),
然後信就顺利寄出了^^
感恩
: $mail->CharSet = "utf-8";
: $mail->From = "[email protected]";
: $mail->FromName = "Aidec";
: $mail->AddAddress("[email protected]", "我是收件人");
: $mail->IsHTML(true);
: $mail->Subject = "主题-测试邮件";
: $mail->Body ="内容-测试test123";
: $mail->AltBody = '当收件人的电子信箱不支援html时,会显示这串~~';
: if(!$mail->send()) {
: echo '信件发送失败!!';
: echo 'Mailer Error: ' . $mail->ErrorInfo;
: } else {
: echo '信件已发送!!';
: }
: ?>
: 感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.235.77.86 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1595501500.A.0F2.html
※ 编辑: backfish (36.235.77.86 台湾), 07/23/2020 18:58:34
1F:推 zx4109: 推,感谢分享解法 07/24 00:18
2F:推 tper8042: 推分享 10/15 01:10