我們通常會在項目里定義一個登錄控制器和登錄界面用于用戶的登錄,可是通常我們在方法里會指定一個登錄成功或失敗返回的界面,通常失敗返回登錄界面重新登錄,成功則跳到首頁。
成都創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的漾濞網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
那么現(xiàn)在問題來了,如果用戶一開始沒有登錄,而是觀看了系統(tǒng)中的頁面,在實現(xiàn)某一功能的時候,比如評論,這個時候就需要登錄了,一般是跳到登錄頁面進行登錄,而登錄成功后又得重新來找到登錄之前的界面,下面介紹一種實現(xiàn)登錄后跳到原來界面的方法,以供參考。
在跳轉(zhuǎn)時,跳轉(zhuǎn)到定義的session中的地址。 先保存請求login方法界面的url public function savelogin(){ session('returnUrl',$_SERVER['HTTP_REFERER']); } 在登錄方法最后跳轉(zhuǎn)時控制 if($returnUrl = session('returnUrl')) { session('returnUrl',null); $this->success('登錄成功',$returnUrl,0); }else{ $this->success('登錄成功',U("Home/Index/index"),0); } } else if($returnUrl = session('returnUrl')){ session('returnUrl',null); $this->error('登錄失敗(用戶名或密碼錯誤)',$returnUrl,0); } else{ $this->success('登錄失敗',U("Home/Login/index"),0);} }
退出時也一樣 public function logout(){ $returnUrl=$_SERVER['HTTP_REFERER']; session(null); $this->success('退出成功',$returnUrl,1); }