>백엔드 개발 >PHP 튜토리얼 >thinkphp는 로그인 후 사전 로그인 페이지로 이동하는 데 여전히 문제가 있습니다

thinkphp는 로그인 후 사전 로그인 페이지로 이동하는 데 여전히 문제가 있습니다

WBOY
WBOY원래의
2016-12-01 01:27:462882검색

이전에는 백그라운드에서 구현하고 싶었는데 어제 여기에 링크 설명에 대해 질문했는데 아무도 대답하지 않았습니다. 백그라운드 구현이 약간 복잡하다고 느꼈습니다. 로그인 템플릿은 다음과 같이 판단합니다. 세션이 있으면 이전 페이지로 돌아가도록 합니다. 액션에서 세션이 있는지 판단할 때에만 씁니다. 세션이 없으면 표시()하도록 하고, 세션이 없으면 이전 페이지로 이동하지 않을까봐 작성하지 않았습니다. 점프에 실패했습니다. 로그인 점프 문제가 이렇게 복잡하다고 생각한 적이 없습니다. 인터넷을 뒤져봐도 해결 방법이 없는지 모르겠습니다.

<code><if condition="isset(session('res2')[0])">
<script type="text/javascript">
window.location=history.go(-1);
</script>
</if>
</code>
<code>public function login(){
            $user=M('user');
            $name=I('name');
            $pw=I('pw');
            $res=$user->where("username='$name' AND password='$pw'")->select();
            if($res){
               session('res2',$res);
            }
            if(!isset(session('res2')[0])){
               $this->display();//如果没有session则显示login页面 
            }      
    }</code>
답글 내용:

이전에는 백그라운드에서 구현하고 싶었는데 어제 여기에 링크 설명에 대해 질문했는데 아무도 대답하지 않았습니다. 백그라운드 구현이 약간 복잡하다고 느꼈습니다. 로그인 템플릿은 다음과 같이 판단합니다. 세션이 있으면 이전 페이지로 돌아갑니다. 액션에서 세션이 있는지 판단할 때 그 부분만 씁니다. 세션이 없으면 표시()하고, 세션이 없으면 이전 페이지로 넘어가지 않을까 해서 작성하지 않았으나 여전히 실패합니다. 로그인 점프 문제가 이렇게 복잡하다고 생각한 적이 없습니다. 인터넷을 검색해봐도 해결 방법이 없는지 모르겠습니다.


<code><if condition="isset(session('res2')[0])">
<script type="text/javascript">
window.location=history.go(-1);
</script>
</if>
</code>
<code>public function login(){
            $user=M('user');
            $name=I('name');
            $pw=I('pw');
            $res=$user->where("username='$name' AND password='$pw'")->select();
            if($res){
               session('res2',$res);
            }
            if(!isset(session('res2')[0])){
               $this->display();//如果没有session则显示login页面 
            }      
    }</code>

<code>$_SERVER['HTTP_REFFERER']</code>
history.go(-1)를 직접 사용해 보세요

이렇게 말하면 로그인 및 권한 감지 문제는 상위 클래스에 작성하고 각 컨트롤러가 이를 상속하도록 해야 합니다.

그럼 판단하세요



그럼 리다이렉션은 대략 이렇습니다session(!$args)점프에 관해서는 이 자체 문서에 대해 자세히 읽어보실 수 있으니 어렵지 않으실 겁니다.
또는 세션을 사용할 수도 있습니다.

thinkphp는 로그인 후 사전 로그인 페이지로 이동하는 데 여전히 문제가 있습니다

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.