2016-03-24 8 views
3

Bir E-ticaret platformu oluşturmak ve bazı sıkıntıları gidermek için Laravel5.2 kullanıyorum. Kullanıcı durumunu oturum açtığımda ve Session::forget('user') veya $request->session()->forget('user') kullanıyorum, geçerli sayfada çalışıyor ve Giriş sayfasına yönlendiriyorum ve dd(Session::all()) oturumunu 'kullanıcı' hala bulun bulun! bu yüzden neyin yanlış olduğunu bilmek karıştı mı? plz nedenini söyle, teşekkürler.Laravel5.2 Oturum kullanımı şunu unutmayın() fakat iş yok

ps. loginout kodu

public function logout(Request $request) 
{ 
    if ($request->session()->has('user')) { 
     $is_forgotten = $request->session()->forget('user'); 
     if ($is_forgotten === null) 
      echo json_encode(['result' => 1]); 
     exit; 
    } 
    echo json_encode(['result'=>0,'msg'=>'loginout error']); 
    exit; 
} 
+1

, bunu neden yerli çıkış sistemi kullanan oldu? –

+0

'\ Session :: forget (' user ') 'veya' session() - unutma (' user ') ' – Qazi

+0

@Qazi yeah kullanmayı deneyin, sadece Session :: forget (' user ') veya session'ı kullanıyorum) -> ('kullanıcı') unut, o gerçekten geçerli sayfada çalışır, ama oturum sayfasına hala yönlendirme oturum kullanıcısını bulmak – Codebear

cevap

0

Oturum, yanıt gönderilinceye ve olaylar/katman yazılımı tetiklenene kadar kaydedilmez.

deneyin yapıyor:

public function logout(Request $request) 
{ 
    if ($request->session()->has('user')) { 
     $is_forgotten = $request->session()->forget('user'); 
     if ($is_forgotten === null) 
      return Response::json(['result' => 1]); 
     return ''; 
    } 
    return Response::json(['result'=>0,'msg'=>'loginout error']); 
} 

Ya

senin yardımcıları kullanıyorsanız:

laravel Zaten
public function logout(Request $request) 
{ 
    if ($request->session()->has('user')) { 
     $is_forgotten = $request->session()->forget('user'); 
     if ($is_forgotten === null) 
      return response()->json(['result' => 1]); 
     return ''; 
    } 
    return response()->json(['result'=>0,'msg'=>'loginout error']); 
}