ThinkPHP框架实现的邮箱激活功能示例
本文实例讲述了ThinkPHP框架实现的邮箱激活功能。分享给大家供大家参考,具体如下
配置框架采用ThinkPHP3.1框架,如下所示
配置过程图
1.修改配置如下
<?php return array( //'配置项'=>'配置值' 'MAIL_ADDRESS'=>'shcg666@sohu.', // 邮箱地址 'MAIL_SMTP'=>'smtp.sohu.', // 邮箱SMTP服务器 'MAIL_LOGINNAME'=>'shcg666@sohu.', // 邮箱登录帐号 'MAIL_PASSWORD'=>'', // 邮箱密码 );
2.在功能里面增加一个类
<?php class EmailAction extends Action{ / microtime() 函数返回当前 Unix 时间戳和微秒数。 mt_srand() 播种 Mersenne Twister 随机数生成器。从 PHP 4.2.0 版开始,seed 参数变为可选项,当该项为空时,会被设为随时数。 注释自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已自动完成。 pow — 指数表达式 / //random()这个函数是我用来生成一个随机数的,$numeric = 0生成一个6位的大小写字母与数字混合的字符串。$numeric = 1生成一个6位数字的字符串 public function random($length = 6 , $numeric = 0) { PHP_VERSION < '4.2.0' && mt_srand((double)microtime() 1000000); if($numeric) { $hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1)); } else { $hash = ''; $chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789abcdefghjkmnpqrstuvwxyz'; $max = strlen($chars) - 1; for($i = 0; $i < $length; $i++) { $hash .= $chars[mt_rand(0, $max)]; } } return $hash; } //发送邮件的方法 public function index(){ //生成6位激活码 $random = $this->random(6,0); //获取本网站的域名,域名在config里面配置下. //例如'domain' => 'http://write.blog.csdn.', $domain = C('domain'); //生成激活码模块地址 $url = $domain.U("Home/Email/activate")."/?yam=$random"; //将邮件地址和随机数放入session session("shcg666@sohu.","$random"); //发送邮件 SendMail("shcg666@sohu.","这是邮件标题","将此网址复制到浏览框$url"); } } function SendMail($address,$title,$message){ //引入文件 vendor('PHPMailer.class#PHPMailer'); require("phpmailer/class.phpmailer.php"); require("phpmailer/class.smtp.php"); //实例化邮件类 $mail=new PHPMailer(); // 设置PHPMailer使用SMTP服务器发送Email $mail->IsSMTP(); // 设置邮件的字符编码,若不指定,则为'UTF-8' $mail->CharSet='UTF-8'; // 添加收件人地址,可以多次使用来添加多个收件人 $mail->AddAddress($address); // 设置邮件正文 $mail->Body=$message; // 设置邮件头的From字段。//发件人 $mail->From=C('MAIL_ADDRESS'); // 设置发件人名字 $mail->FromName='LilyRecruit'; // 设置邮件标题 $mail->Subject=$title; // 设置SMTP服务器。 $mail->Host=C('MAIL_SMTP'); // 设置为"需要验证" $mail->SMTPAuth=true; // 设置用户名和密码。 $mail->Username=C('MAIL_LOGINNAME'); $mail->Password=C('MAIL_PASSWORD'); // 发送邮件。 return($mail->Send()); }
3.导入的文件
在网上下载PHPMailer包将class.smtp.php和class.phpmailer.php无需任何改动,直接复制进来即可。
class.smtp.php文件点击此处。
class.phpmailer.php文件完整实例代码点击此处。
配置完成,具体的处理方式需要进一步改动。
4.常见邮件服务器(接收服务器和发送邮件服务器)地址
腾讯QQ邮箱
接收服务器pop.qq.
发送服务器smtp.qq.
网易126邮箱
接收服务器pop3.126.
发送服务器smtp.126.
网易163免费邮
接收服务器pop.163.
发送服务器smtp.163.
网易163VIP邮箱
接收服务器pop..163.
发送服务器smtp..163.
网易188财富邮
接收服务器pop.188.
发送服务器smtp.188.
网易yeah.邮箱
接收服务器pop.yeah.
发送服务器smtp.yeah.
网易ease.邮箱
接收服务器pop.ease.
发送服务器smtp.ease.
新浪收费邮箱
接收服务器pop3..sina.
发送服务器smtp..sina.
新浪免费邮箱
接收服务器pop3.sina..
发送服务器smtp.sina..
搜狐邮箱
接收服务器pop3.sohu.
发送服务器smtp.sohu.
21快感邮
接收服务器.21.
发送服务器.21.
21经济邮
接收服务器pop.163.
发送服务器smtp.163.
tom邮箱
接收服务器pop.tom.
发送服务器smtp.tom.
263邮箱
接收服务器263.
发送服务器smtp.263.
网易163.邮箱
接收服务器rwypop.china.
发送服务器rwypop.china.
雅虎邮箱
接收服务器pop.mail.yahoo.
发送服务器smtp.mail.yahoo.
Gmail邮箱
接收服务器pop.gmail.
发送服务器smtp.gmail.
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题《》、《》、《》、《》、《》、《》及《》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程