入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

YII用户注册和用户登录(四)之进行会话控制

创建时间:2014-10-26 投稿人: 浏览次数:1332

4 进行会话控制;

上面实现了用户登录在模型当中分析,怎样使用户在不同页面上跳转都保持在线状态,这便涉及到会话控制。这里主要是从控制器方面进行分析。

    /**
     *用户登录 
     */
    function actionLogin(){
        //创建登录模型对象
        $user_login = new LoginForm;        
        if(isset($_POST["LoginForm"])){
            //收集表单信息
            $user_login->attributes = $_POST["LoginForm"];
             //校验数据,走的是rules()方法,不只校验用户名和密码是否填写,还要校验真实性(在模型里边自定义方法校验真实性)
            //用户信息进行session存储,调用模型里边的一个方法login(),就可以进行session存储
            if($user_login->validate() && $user_login->login()){
                $this ->redirect ("./index.php");
            }
        }
        
        $this -> render("login",array("user_login"=>$user_login));
    }
代码追踪:








前台判断是否用户登录:

                    <!--判断用户是否登录系统-->
                    <?php
                        //在user组件里边有一个方法getIsGuest(),判断用户是否是游客
                        if(Yii::app()->user->getIsGuest()){
                    ?>
                    
                    <font id="ECS_MEMBERZONE">
                        <div id="append_parent"></div>
                        欢迎光临本店 
                        <a href="./index.php?r=user/login"> 登录</a>
                        <a href="./index.php?r=user/register">注册</a>
                    </font>
                    <?php } else {?>
                    <font id="ECS_MEMBERZONE">
                        <div id="append_parent"></div>
<!--                        在user组件里来表示用户登录信息,这个信息是session里面信息-->
                        <font class="f4_b"><?php echo Yii::app()->user->name; ?></font>, 欢迎您回来!
                        <a href="#">用户中心</a>
                        <a href="./index.php?r=user/logout">退出</a>
                    </font>
                    <?php } ?>

怎样删除会话控制哪?

这样就ok!

    /* 用户退出系统
     */
    function actionLogout(){
        //删除session信息
        Yii::app()->session->clear();  //删除内存里边sessiion变量信息
        Yii::app()->session->destroy(); //删除服务器的session文件
        $this->redirect("/");
    }


声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。