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实现链结人气统计
Oct 09 PHP
php session 错误
May 21 PHP
php提示undefined index的几种解决方法
May 21 PHP
PHP入门经历和学习过程分享
Apr 11 PHP
php去除字符串中空字符的常用方法小结
Mar 17 PHP
PHP验证信用卡卡号是否正确函数
May 27 PHP
100行PHP代码实现socks5代理服务器
Apr 28 PHP
smarty中改进truncate使其支持中文的方法
May 30 PHP
24条货真价实的PHP代码优化技巧
Jul 28 PHP
浅谈laravel框架sql中groupBy之后排序的问题
Oct 17 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
Dec 11 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 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
php数组总结篇(一)
2008/09/30 PHP
php 魔术函数使用说明
2010/02/21 PHP
探讨:array2xml和xml2array以及xml与array的互相转化
2013/06/24 PHP
对PHP语言认识上需要避免的10大误区
2014/06/12 PHP
thinkPHP3.2简单实现文件上传的方法
2016/05/16 PHP
PHP实现登录搜狐广告获取广告联盟数据的方法【附demo源码】
2016/10/14 PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
2019/03/22 PHP
简单的php购物车代码
2020/06/05 PHP
Javascript 是你的高阶函数(高级应用)
2015/06/15 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
js实现按钮控制带有停顿效果的图片滚动
2016/08/30 Javascript
webpack配置文件和常用配置项介绍
2017/04/28 Javascript
JS中关于正则的巧妙操作
2017/08/31 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
微信小程序实现联动选择器
2019/02/15 Javascript
js获取form表单中name属性的值
2019/02/27 Javascript
解决微信小程序中的滚动穿透问题
2019/09/16 Javascript
解决vue做详情页跳转的时候使用created方法 数据不会更新问题
2020/07/24 Javascript
python中join()方法介绍
2018/10/11 Python
对python中类的继承与方法重写介绍
2019/01/20 Python
Python实现Mysql数据统计及numpy统计函数
2019/07/15 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
pytorch GAN伪造手写体mnist数据集方式
2020/01/10 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
CSS的pointer-events属性详细介绍(作用和注意事项)
2014/04/23 HTML / CSS
美体小铺加拿大官方网站:The Body Shop加拿大
2016/10/30 全球购物
JD Sports马来西亚:英国领先的运动鞋和运动服饰零售商
2018/03/13 全球购物
TUMI新加坡官网:国际领先的商旅箱包品牌
2019/01/12 全球购物
光电信息专业应届生求职信
2013/10/07 职场文书
个人社会实践自我鉴定
2014/03/24 职场文书
硕士学位论文评语
2014/12/31 职场文书
2019年个人工作总结范文(3篇)
2019/08/27 职场文书
vue实现同时设置多个倒计时
2021/05/20 Vue.js
一条慢SQL语句引发的改造之路
2022/03/16 MySQL
vue elementUI表格控制对应列
2022/04/13 Vue.js
css之clearfix的用法深入理解(必看篇)
2023/05/21 HTML / CSS