ThinkPHP--登录退出

<?php 
/**
 * 用户登陆与退出
 * 注册成功后,将页面跳转到login登陆页面
 * 当数据提交到登陆页面后,必须先执行验证码验证通过再执行登陆操作
 */
public function checkyzm($yzm){
    $verify=new \Think\Verify();//实例化TP自带的Verify方法
    if($verify->check($yzm)){//调用check方法
        return true;
    }else{
        echo '验证码错误';
        exit();
    }
}

public function login(){
    if(!IS_POST){
        $this->display();
    }else{
        //若验证码验证通过
        if($this->checkyzm(I('post.yzm'))){
            $username=I('post.username');
            $user=D( ' user ' )->where(" username='$username' ")->find();
            //post过来的password拼接盐md5后密码=数据库的密码,则通过
            if(md5( I( ' post.password ' ) . $user[ ' salt ' ])===$user['password']{
                cookie('username' , $userp[ ' username ' ]);//写入cookie
                $this->redirect('/');//跳转到首页
            }else{
                echo '用户名或密码不对';
            }
        }
    }
}


/**V层
 * 退出登陆
 * 读取cookie $Think.cookie
 */
//若没有cookie数据
您好欢迎观临
<if condition="$Think.cookie.username eq null">
<a href="{:U('Home/User/login')}" style="color:#50884b">登陆</a> |
<a href="{:U('Home/User/reg')}" style="color:#50884b">免费注册</a> |
<else />
{$Think.cookie.username}|
<<a href="{:U('Home/User/login')}" style="color:#50884b">退出</a>
 </if>


 /**
  * 退出方法
  * 1,cookie设为null,删除cookie
  * 2.   跳转到首页
  */
 public function logout(){
     cookie('username' , null);
     $this->redirect('/');
 }

 ?>}

 

posted @ 2017-06-29 16:40  SYsunyi  阅读(541)  评论(0)    收藏  举报