欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP登录session的获取

程序员文章站 2022-04-07 11:58:02
...

这篇文章主要介绍了关于PHP登录session的获取,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

PHP登录session的获取

登录时记录session

	
	/**
	 *	执行登录
	 */
	public function doLogin(){
		$condition['name'] = $username = trim($_POST['username']);
		$condition['password'] = $password = md5(trim($_POST['password']));
		//稍后在加验证码验证逻辑
		//$imgCode = $_POST['imgCode'];
		if (empty($username) || empty($password)) {
			$this->ajaxReturn(null,C("ERR_MSG_70"),"success:false");
		}
		$user = D("User")->relation(true)->where($condition)->find();
		if(empty($user)){
			$this->ajaxReturn(null,"用户名或者密码错误","success:false");
		}
		if(empty($user['apps']) && $user['role'] != UserModel::ADMIN){
			$this->ajaxReturn(null,'该用户不属于任何一条产品线,不允许登录,请联系管理员!','success:false');
		}
		if (empty($user)) {
			$this->ajaxReturn(null,C("ERR_MSG_70"),"success:false");
		}
		$defaultAppId = $user['defaultApp'] >= 0 ? $user['defaultApp'] :  $user['apps'][0]['id'];
		
		foreach ($user['apps'] as $app){
			if ($app['id'] == $defaultAppId){
				$appName = $app['appName'];
				break;
			}
		}
		$session = array('uid'=>$user['id'],'username'=>$username,'role'=> $user['role'],'appId' => $defaultAppId,'appName'=>$appName);
		setSession($session);
		$this->ajaxReturn($data,"恭喜,登录成功!","success:true");

	}

具体页面使用时,action中session的获取

 public function deploy()
    {
        $username = session('username');
        $conditions = explode(",", $_POST['environment']);
        $envarr = array();
        foreach ($conditions as $condition) {
            $envIds = D('Env')->field('name,IP')
                ->where("name like'" . $condition . "%'")
                ->select();
            
            foreach ($envIds as $key => $envId) {
                $envIds[$key]['mem'] = $this->getCPUMEM($envId['IP']);
            }
            
            $envIdsSort = $this->my_sort($envIds, 'mem', SORT_ASC, SORT_STRING);
            // $envIds=array_remove($envIds,'mem');
            $envarray['env'] = $condition;
            $envarray['smallIP'] = $envIdsSort[0]['IP'];
            $envarr[] = $envarray;
        }
        $_POST['environment'] = json_encode($envarr);
        $_POST['username']=$username;
        
        $resultnew = $this->request("localhost:8080/execute/isbuildingNew.html", $_POST, "POST");
        // var_dump($resulenew);
        if ($resultnew == "building:true") {
            $this->ajaxReturn(1, '前一次构建正在进行中,请稍候重试!', 'success:false');
        } else {
            $result = $this->request("localhost:8080/execute/onlineDeployNew.html", $_POST, "POST");
            if ($result) {
                $this->ajaxReturn(1, $result, 'success:true');
            } else {
                $this->ajaxReturn(0, "提交构建失败", 'success:false');
            }
        }
    }

然后后端就能获取到这个username了,soeasy!

相关推荐:PHP登录实现记住我功能

相关专题推荐php session (包含图文、视频、案例)

以上就是PHP登录session的获取的详细内容,更多请关注其它相关文章!