吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3013|回复: 7
收起左侧

[其他转载] PHP语言发送邮件之smtp(网易邮箱测试)

[复制链接]
yuqiaobin 发表于 2020-2-29 17:02
本帖最后由 yuqiaobin 于 2020-3-1 22:25 编辑

曾经我天真的以为靠php 的mail函数就可以发送,然后发现并不可以,所以就考虑smtp(邮件传输的协议)

网易邮箱开smtp服务,获得密码,记住这个密码

然后我又踩坑了,查了好多资料检查为什么连接不上smtp.163.com,原来是阿里云的锅,好像现在云服务器的25端口都关闭了(为了防止垃圾邮件),原谅我的孤陋寡闻,所以我采用465端口。
我自己先把php.ini里面的信息改成465端口(必要性未知),再把连接的SMTP服务器由smtp.163.com更改为ssl://smtp.163.com。

然后就可以发送了邮件了


然后再在sendmail.php中填入自己的信息,如
1.连接网易163的服务器
$smtpserver = "ssl://smtp.163.com";//SMTP服务器

2.输入密码(开通smtp服务后给的码)$smtppass = "";//SMTP服务器的用户密码

3.填入邮箱和用户名
$smtpusermail = "";//SMTP服务器的用户邮箱
$smtpuser = "";//SMTP服务器的用户帐号,注:部分邮箱只需@前面的用户名有些是我们该程序中不需要用到的

最后$smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);
参数依次是发送给谁,SMTP服务器的用户邮箱(也就是发件人啦),邮件的主题,邮件的内容,邮件的类型(如HTML or txt),返回值是成功与否


(悄悄的说一句:这样子发的邮件容易被qq扔进垃圾箱,容我再学习研究一下,看看怎么才不会被屏蔽)

有兴趣的小伙伴可以试一下

代码.rar

3.48 KB, 下载次数: 58, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 1吾爱币 +1 收起 理由
e.wgs + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

anangz_com 发表于 2020-2-29 20:17
好东西!
lsmh 发表于 2020-4-6 15:42
 楼主| yuqiaobin 发表于 2020-4-6 16:36
lsmh 发表于 2020-4-6 15:42
对不起,邮件发送失败!

看一下错误信息?把一个errorinfo什么的改成true就可以看错误代码
xjdasitu 发表于 2020-4-6 18:18
下载学习,感谢楼主分享经验
lsmh 发表于 2020-4-7 10:23
可以了,但提示这个:
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; smtp has a deprecated constructor in D:\localuser\ftp63600000\Web\mail\Smtp.class.php on line 2
恭喜!邮件发送成功!
怎么解决呢?我的版本是7.0.3
 楼主| yuqiaobin 发表于 2020-4-7 19:08
In previous versions of PHP, if PHP cannot find a __construct() function for a given class, it will search for the old-style constructor function, by the name of the class, but now old style constructors are DEPRECATED in PHP 7.0, and will be removed in a future version. You should always use __construct() in new code. Read php manual

   function __construct() {
      // copy your old constructor function code here
   }

在的早期版本中PHP,如果PHP找不到__construct()给定类的函数,它将按类的名称搜索旧样式的构造函数,但现在旧样式的构造函数已在中弃用PHP 7.0,并将在以后的版本中删除。您应该始终__construct()在新代码中使用。

stackoverflow有网友是这么说的,我用的是php5.3  ,如果发送成功,你可以把errorinfo给关了,眼不见心不烦(我自己还太菜,有时间再来学习一下)
 楼主| yuqiaobin 发表于 2020-4-7 19:09
lsmh 发表于 2020-4-7 10:23
可以了,但提示这个:
Deprecated: Methods with the same name as their class will not be constructors ...


In previous versions of PHP, if PHP cannot find a __construct() function for a given class, it will search for the old-style constructor function, by the name of the class, but now old style constructors are DEPRECATED in PHP 7.0, and will be removed in a future version. You should always use __construct() in new code. Read php manual

   function __construct() {
      // copy your old constructor function code here
   }

在的早期版本中PHP,如果PHP找不到__construct()给定类的函数,它将按类的名称搜索旧样式的构造函数,但现在旧样式的构造函数已在中弃用PHP 7.0,并将在以后的版本中删除。您应该始终__construct()在新代码中使用。

stackoverflow有网友是这么说的,我用的是php5.3  ,如果发送成功,你可以把errorinfo给关了,眼不见心不烦(我自己还太菜,有时间再来学习一下)
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 04:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表