이 글은 주로 사용자의 로그인 여부를 판단하기 위한 PHP 관련 정보를 소개하고 있습니다. 매우 좋고 참고할만한 가치가 있습니다. 필요하신 분들은 참고하시면 됩니다
1.
2.
<if condition="$GLOBALS['userinfo']['user_id'] gt 0"> <span class="help_wz"><a href="{$Think.config.VIP_URL}/Member/user_pwd/" style="color:#404958;">找回登录密码</a></span> <else/> <span class="help_wz"><a href="/Login/FindPwd" style="color:#404958;">找回登录密码</a></span> </if>
3 .백그라운드에서 전역 변수 설정 및 사용자 정보 조회
public function UserInfo($user_id){ //查询系统信息 $system=array( 'CmdId'=>'System', 'Token'=>'wap', 'PostDetails'=>json_encode(array( ))); //通过curl的post方式发送接口请求 $curl=new CurlController(); $strs=$curl->SendCurl($system); $GLOBALS['system']=$strs['AcctDetails']; if(empty($user_id)){ return false; } setcookie("login_uid", $user_id, time() + 3600, "/", C('cookie_url')); setcookie("rdun", $this->authcode($user_id . "," . time(), "ENCODE"), time() + 3600,"/",C('cookie_url'));; $data=array( 'CmdId'=>'Inpidual', 'Token'=>session('token'), 'PostDetails'=>json_encode(array( 'user_id'=>$user_id, ))); //通过curl的post方式发送接口请求 $curl=new CurlController(); $str=$curl->SendCurl($data); $GLOBALS['userinfo']=$str['AcctDetails']; $newtoken=unserialize($str['AcctDetails']['token']); $oldtoken=unserialize(session('token')); if(!empty(session('token')) && !empty($str['AcctDetails']['token'])){ //用户不对 if($newtoken['user_id'] !== $newtoken['user_id']){ session('token',null); session('user_id',null); header('Location:/Login/Login'); return false; } //token不对 if($newtoken['time'] !== $oldtoken['time']){ session('token',null); session('user_id',null); header('Location:/Login/Login'); return false; } //超时的不能在这做,原因是存入session的值不变,如果用户一直操作的话,而且只登陆一次,那么就会出现问题 } return true; }
요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되길 바랍니다.
관련 권장 사항:
PHP에서 명령 공간을 정의할 때 주의할 몇 가지 사항
PHP가 원격 주소를 요청하는 시간 제한을 설정하는 솔루션
phpExcel 테이블을 쉽게 가져올 수 있음 PHPExcel을 통한 MySQL 데이터베이스 예제
위 내용은 PHP는 사용자가 인스턴스 분석에 로그인했는지 여부를 확인합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!