• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > ThinkPHP框架实现的邮箱激活功能示例

ThinkPHP框架实现的邮箱激活功能示例

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了ThinkPHP框架,邮箱激活功能等相关知识,希望对您有所帮助

这篇文章主要介绍了ThinkPHP框架实现的邮箱激活功能,结合实例形式分析了thinkPHP使用class.smtp.php及class.phpmailer.php类文件进行邮件发送实现激活功能的具体操作技巧,需要的朋友可以参考下

本文实例讲述了ThinkPHP框架实现的邮箱激活功能。分享给大家供大家参考,具体如下:

配置框架采用ThinkPHP3.1框架,如下所示:

配置过程图:


ThinkPHP框架实现的邮箱激活功能示例


1、修改配置如下:

<?phpreturn array(      //'配置项'=>'配置值'    'MAIL_ADDRESS'=>'shcg666@sohu.com', // 邮箱地址    'MAIL_SMTP'=>'smtp.sohu.com', // 邮箱SMTP服务器    'MAIL_LOGINNAME'=>'shcg666@sohu.com', // 邮箱登录帐号    'MAIL_PASSWORD'=>'******', // 邮箱密码);

2、在功能里面增加一个类

<?phpclass 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.net',        $domain = C('domain');        //生成激活码模块地址        $url = $domain.U("Home/Email/activate")."/?yam=$random";        //将邮件地址和随机数放入session        session("shcg666@sohu.com","$random");        //发送邮件        SendMail("shcg666@sohu.com","这是邮件标题","将此网址复制到浏览框$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文件点击链接下载(ThinkPHP框架实现的邮箱激活功能示例class.smtp.php)。

class.phpmailer.php文件完整实例代码点击链接下载(ThinkPHP框架实现的邮箱激活功能示例class.phpmailer.php)。

配置完成,具体的处理方式需要进一步改动。


4、常见邮件服务器(接收服务器和发送邮件服务器)地址

腾讯QQ邮箱

接收服务器:pop.qq.com

发送服务器:smtp.qq.com


网易126邮箱

接收服务器:pop3.126.com

发送服务器:smtp.126.com


网易163免费邮

接收服务器:pop.163.com

发送服务器:smtp.163.com


网易163VIP邮箱

接收服务器:pop.vip.163.com

发送服务器:smtp.vip.163.com


网易188财富邮

接收服务器:pop.188.com

发送服务器:smtp.188.com


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ThinkPHP框架SQL操作链式写法原理
  • 解析TP框架下mongo的基础操作及其注意点
  • ThinkPHP框架实现的邮箱激活功能示例

相关文章

  • 动态获取织梦CMS最新更新 利于收录的SiteMap.php文
  • 宝塔Linux面板之修改MySQL默认保存位置
  • 帝国cms网站后台关键字自动同步TAG标签更新的方法
  • PhotoShop制作window7移动导航网页界面设计教程
  • 怎么解决PHP高并发(商品秒杀)问题?两种解决方案分享
  • 如何升级或修改nodejs的版本
  • Photoshop打造快速坠入水的文字特效
  • 分享TP6框架中Redis操作服务类的记录
  • 一分钟学会Docker安装phpmyadmin
  • dedecms栏目30个关键字限制解决方法

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Photoshop使用图层样式制作金属立体字
    • 15个值得收藏的实用JavaScript代码片段(项目必备)
    • PS制作非常逼真的针织吊牌
    • Photoshop制作颓废的彩色立体字
    • PhotoShop CS5打造木栈道婚纱外景照片后期合成教程
    • PHP之array_unique实现二维数组去重
    • 微信小程序发布新版本时自动提示用户更新的方法
    • 实例详解Ajax+php数据交互并且局部刷新页面
    • 使用CSS实现一个吃豆人的Loading加载效果
    • 为网站选择一个适当的DMOZ目录

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有