Heim  >  Artikel  >  Backend-Entwicklung  >  thinkphp hat immer noch ein Problem damit, nach der Anmeldung zur Vor-Anmeldeseite zu springen

thinkphp hat immer noch ein Problem damit, nach der Anmeldung zur Vor-Anmeldeseite zu springen

WBOY
WBOYOriginal
2016-12-01 01:27:462859Durchsuche

Gestern habe ich hier eine Frage zur Linkbeschreibung gestellt, aber niemand hat geantwortet, dass die Hintergrundimplementierung etwas kompliziert ist. Dann wollte ich die Funktion des Nachherspringens implementieren Melden Sie sich an der Rezeption an.
Ich bin in der Anmeldevorlage. Wenn es eine Sitzung gibt, kehren Sie zur vorherigen Seite zurück. Bei der Beurteilung, ob es eine Sitzung in der Aktion gibt, schreibe ich das nur Wenn es keine Sitzung gibt, lassen Sie es anzeigen(). Wenn ja, gibt es keine Sitzung. Ich hatte Angst, dass es nicht zur vorherigen Seite springen würde, also habe ich es nicht geschrieben, aber es ist trotzdem fehlgeschlagen Ich hätte nie gedacht, dass das Problem des Login-Sprungs so kompliziert ist. Ich habe im ganzen Internet gesucht und keine Lösung gefunden 🎜>

<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>
Antwortinhalt:

Gestern habe ich hier eine Frage zur Linkbeschreibung gestellt, aber niemand hat geantwortet, dass die Hintergrundimplementierung etwas kompliziert ist. Dann wollte ich die Funktion des Nachherspringens implementieren Melden Sie sich an der Rezeption an.

Ich bin in der Anmeldevorlage. Wenn es eine Sitzung gibt, kehren Sie zur vorherigen Seite zurück. Bei der Beurteilung, ob es eine Sitzung in der Aktion gibt, schreibe ich das nur Wenn es keine Sitzung gibt, lassen Sie es anzeigen(). Wenn ja, gibt es keine Sitzung. Ich hatte Angst, dass es nicht zur vorherigen Seite springen würde, also habe ich es nicht geschrieben, aber es ist trotzdem fehlgeschlagen Ich hätte nie gedacht, dass das Problem des Login-Sprungs so kompliziert ist. Ich habe im Internet gesucht und keine Lösung gefunden 🎜>

<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>
Probieren Sie History.go(-1) direkt aus

Sagen wir es so: Das Problem der Erkennung von Anmeldungen und Berechtigungen sollte in die übergeordnete Klasse geschrieben werden und dann von jedem Controller erbt werden.

Dann beurteilen



Dann ist die Umleitung ungefähr sosession(!$args)Was den Sprung betrifft, können Sie mehr über dieses Selbstdokument lesen, es sollte nicht schwierig sein.
Oder Sie können auch Sitzung verwenden.

thinkphp hat immer noch ein Problem damit, nach der Anmeldung zur Vor-Anmeldeseite zu springen

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn