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 相关文章推荐
解决phpmyadmin 乱码,支持gb2312和utf-8
Nov 20 PHP
PHP 图片文件上传实现代码
Dec 29 PHP
php将access数据库转换到mysql数据库的方法
Dec 24 PHP
discuz图片顺序混乱解决方案
Jul 29 PHP
学习php设计模式 php实现访问者模式(Visitor)
Dec 07 PHP
浅析php如何实现App常用的秒发功能
Aug 03 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
Sep 09 PHP
PHP GD库相关图像生成和处理函数小结
Sep 30 PHP
php中文乱码问题的终极解决方案汇总
Aug 01 PHP
PHP调用其他文件中的类
Apr 02 PHP
php+redis实现消息队列功能示例
Sep 19 PHP
laravel框架学习笔记之组件化开发实现方法
Feb 01 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
星际RPG字典
2020/03/04 星际争霸
PHP中文URL编解码(urlencode()rawurlencode()
2010/07/03 PHP
将一维或多维的数组连接成一个字符串的php代码
2010/08/08 PHP
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
js数组操作常用方法
2014/05/08 Javascript
基于jquery和svg实现超炫酷的动画特效
2014/12/09 Javascript
Javascript中使用parseInt函数需要注意的问题
2015/04/02 Javascript
js限制input标签中只能输入中文
2015/06/26 Javascript
快速掌握Node.js之Window下配置NodeJs环境
2016/03/21 NodeJs
javascript insertAfter()定义与用法示例
2016/07/25 Javascript
AngularJS基础 ng-readonly 指令简单示例
2016/08/02 Javascript
js获取指定字符前/后的字符串简单实例
2016/10/27 Javascript
Bootstrap基本插件学习笔记之按钮(21)
2016/12/08 Javascript
微信小程序 弹框和模态框实现代码
2017/03/10 Javascript
微信小程序--onShareAppMessage分享参数用处(页面分享)
2017/04/18 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
2018/11/13 Javascript
js中switch语句的学习笔记
2020/03/25 Javascript
[01:07]DOTA2次级职业联赛 - Fpb战队宣传片
2014/12/01 DOTA
从零学Python之入门(二)基本数据类型
2014/05/25 Python
Python实现把xml或xsl转换为html格式
2015/04/08 Python
python对DICOM图像的读取方法详解
2017/07/17 Python
Django forms组件的使用教程
2018/10/08 Python
浅谈python标准库--functools.partial
2019/03/13 Python
Flask框架钩子函数功能与用法分析
2019/08/02 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
python操作ini类型配置文件的实例教程
2020/10/30 Python
Sahajan美国:阿育吠陀护肤品牌
2021/01/09 全球购物
Shell脚本如何向终端输出信息
2014/04/25 面试题
J2EE中的容器都包括哪些
2013/08/21 面试题
医学专业自荐信
2014/06/14 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
2015年感恩父亲节活动策划方案
2015/05/05 职场文书
MybatisPlus EntityWrapper如何自定义SQL
2022/03/22 Java/Android
Javascript webpack动态import
2022/04/19 Javascript