控制器:

//发送邮箱,激活账号
   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框架中邮箱激活(数字签名)的更多相关文章

  1. Yii 框架中安装 memcache 及配置和测试

    安装php_memcache.dll扩展 1.首先将php_memcache.dll文件放入E:\server\php\ext目录下 (php_memcache.dll下载地址:http://wind ...

  2. Yii框架中集成phprpc、hprose

    在项目开发的过程中有时候会涉及到对外提供接口供第三方程序调用或者是不同程序间需要相互通信,那么最通用的做法是用传统的SOAP方式来实现,用XML的文档格式来作为传输载体.但是这种方式不灵活,支持的数据 ...

  3. 使用Yii框架中遇到的三个问题

    以下由我们在信易网络公司开发项目的时候终结出的一些经验 使用Yii框架中遇到的三个问题 1.main.php文件中欲引入全局变量的问题 还原一下此问题:在Yii框架中,main.php一般会作为整个应 ...

  4. yii框架中关于控制器中filter过滤器和外部action的使用

    在yii框架中,控制器的过滤器分为执行前和执行后,这里举例是在执行控制器前的过滤. 需要在components/文件夹下定义公共的TestAction.php文件,并且实现run()方法.这个acti ...

  5. Yii框架中使用SRBAC作为权限管理模块时遇到的问题

    Yii框架中使用SRBAC作为权限管理模块时遇到的问题   看到Yii中提供RBAC的插件,SRBAC,就想用用. 结果按照手册上的安装办法,整来整去,安装完了,可就是进不了权限管理界面. 最后想到, ...

  6. YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因

    YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因在YII框架的使用过程中,我们可以使用foreach直接遍历findAll等方法返回的对象的属性为什么呢?其实这与CMo ...

  7. YII框架中的srbac权限管理模块的安全与使用(版本是1.1.20)

    0x01 前言 srbac的原理: YII框架的srbac模块是一个专门管理权限的一个模块,那它是怎么管理权限的呢.我们知道YII框架的网页显示是由控制器实现的,控制器继承父类CController和 ...

  8. Yii框架中使用PHPExcel导出Excel文件

    最近在研究PHP的Yii框架,很喜欢,碰到导出Excel的问题,研究了一下,就有了下面的方法: 1.首先在config\main.php中添加对PHPExcel的引用,我的方式是这样: 1 2 3 4 ...

  9. YII框架中php入口文件隐藏

    Apache配置修改 主要修改下httpd文件中的两个地方 1.启用mod_rewrite.so模块,在Apache的配置文件中找到如下行,去掉前面的字符"#",保存 #LoadM ...

随机推荐

  1. ios 消息传递机制

    引用文章 一.KVO 1.当对象中的某个属性值发生了改变,可以对这些值的观察者做出通知. 2.接受者(会接收到值发生改变的消息) 必须知道发送者(值将发生改变的那个对象). 3.接收者同样还需要知道发 ...

  2. Oracle客户端显示乱码解决

    1.查找当前服务器的字符集: 2.使用查询得到的结果集,设置本地local字符集:(不要照抄图片)

  3. VirtualBox 使用技巧

    一.VirtualBox 的快捷键 VirtualBox 默认的 Host 键是 Right Ctrl Host 键可以点击 Oracle VM VirtualBox 管理器的左上角 “管理”-> ...

  4. Bundle文件的创建和使用(一)

    经常会出现某个需求:将自己的模块或者开放类,封装成静态库给其他人提供方便的调用. 但是当你的模块中需要大量使用xib,图片,音频或者其他资源文件时,无法添加至静态库.这个时候就需要将一些资源文件封装至 ...

  5. magento csv导入

  6. LeetCode Longest Palindrome

    原题链接在这里:https://leetcode.com/problems/longest-palindrome/ 题目: Given a string which consists of lower ...

  7. Java Main Differences between Java and C++

    转载自:http://www.cnblogs.com/springfor/p/4036739.html C++ supports pointers whereas Java does not. But ...

  8. opencv的高斯混合模型

    http://blog.jasonding.top/2015/04/05/Machine%20Learning/%E3%80%90%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%8 ...

  9. 史上最全的CSS样式整理

    一 字体属性:(font) 大小 {font-size: x-large;}(特大) xx-small;(极小) 一般中文用不到,只要用数值就可以,单位:PX.PD 样式 {font-style: o ...

  10. android 检查网络连接状态实现步骤

    获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...