Yii框架实现邮箱激活的方法【数字签名】


Posted in PHP onOctober 18, 2016

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

控制器:

//发送邮箱,激活账号
public function actionEmail()
{
    $email=Yii::$app->request->get('email');
    //数字签名
    $em_1=md5($email);
    //邮箱发送
    $mail= Yii::$app->mailer->compose();
    $mail->setTo($email);
    $mail->setSubject("激活邮箱");
    //发布可以带html标签的文本
    $mail->setHtmlBody("<a href='http://www.small2.com/backend/web/index.php?r=login/live&em_1=".$em_1."&email=".$email."'>点击此链接</a>");
    if($mail->send())
      echo "success";
    else
      echo "false";
    die(); //邮箱发送ok
}
//激活账号
public function actionLive()
{
   $email=Yii::$app->request->get('email');
   $em_1=Yii::$app->request->get('em_1');
   //echo $em_1;die;
   $em_2=md5($email);
   //echo $em_2;die;
   if($em_1==$em_2)
   {
     $res=Yii::$app->db;
     $data=$res->createCommand()->update("login",["status"=>1],["email"=>$email])->execute();
     if($data)
     {
      echo "<script>alert('激活成功,可登录');location.href='index.php?r=login/login'</script>";
     }
     else
     {
       echo "<script>alert('激活失败');location.href='index.php?r=login/login'</script>";
     }
   }
   else
   {
     echo "<script>alert('参数错误,重新激活');location.href='index.php?r=login/login'</script>";
   }
}

原理:(注册后原有默认原有状态status=0,激活后改为1,方可登陆。)

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
《PHP编程最快明白》第八讲:php启发和小结
Nov 01 PHP
php流量统计功能的实现代码
Sep 29 PHP
mcrypt启用 加密以及解密过程详细解析
Aug 07 PHP
ThinkPHP页面跳转success与error方法概述
Jun 25 PHP
php统计数组元素个数的方法
Jul 02 PHP
WordPress中用于更新伪静态规则的PHP代码实例讲解
Dec 18 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
PHP迭代与递归实现无限级分类
Aug 28 PHP
TP5.0框架实现无限极回复功能的方法分析
May 04 PHP
php封装的pdo数据库操作工具类与用法示例
May 08 PHP
解决Laravel5.2 Auth认证退出失效的问题
Oct 14 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
Oct 18 #PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
Oct 18 #PHP
利用PHP绘图函数实现简单验证码功能的方法
Oct 18 #PHP
Yii针对添加行的增删改查操作示例
Oct 18 #PHP
Yii遍历行下每列数据的方法
Oct 17 #PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 #PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 #PHP
You might like
在WAMP环境下搭建ZendDebugger php调试工具的方法
2011/07/18 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
2015/11/05 PHP
php版微信公众平台入门教程之开发者认证的方法
2016/09/26 PHP
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
javascript之典型高阶函数应用介绍二
2013/01/10 Javascript
简约JS日历控件 实例代码
2013/07/12 Javascript
使用Sticker.js实现贴纸效果
2015/01/28 Javascript
Javascript OOP之面向对象
2016/07/31 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
Vue自定义指令拖拽功能示例
2017/02/17 Javascript
JS中去掉array中重复元素的方法
2017/05/26 Javascript
Vue.Draggable实现拖拽效果
2020/07/29 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
2018/08/31 Javascript
React+Antd+Redux实现待办事件的方法
2019/03/14 Javascript
vue+element-ui JYAdmin后台管理系统模板解析
2020/07/28 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
2020/11/03 Javascript
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
[51:50]完美世界DOTA2联赛 Magma vs GXR 第一场 11.07
2020/11/10 DOTA
python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法
2014/08/22 Python
matplotlib.pyplot绘图显示控制方法
2019/01/15 Python
Python中一般处理中文的几种方法
2019/03/06 Python
django框架创建应用操作示例
2019/09/26 Python
python hash每次调用结果不同的原因
2019/11/21 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
python异常处理try except过程解析
2020/02/03 Python
使用Html5实现异步上传文件,支持跨域,带有上传进度条
2016/09/17 HTML / CSS
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
西班牙香水和化妆品购物网站:Arenal Perfumerías
2019/03/01 全球购物
联想英国官网:Lenovo英国
2019/07/17 全球购物
《登鹳雀楼》教学反思
2014/04/09 职场文书
小学生校园广播稿
2014/09/28 职场文书
美容院合作经营协议书
2014/10/10 职场文书
仓管员岗位职责范本
2015/04/01 职场文书
Vue实现跑马灯样式文字横向滚动
2021/11/23 Vue.js