2016-11-01 3 views
0

Ich versuche, an einem Projekt in Laravel 4.2 zu arbeiten, aber jetzt möchte ich die Anzahl der Login-Versuche für Benutzer begrenzen. Die meisten Lösungen sind Laravel 5 und nicht vertraut mit 5. also jemand mit einer idee bitte ich brauche ihre hilfe. Danke.Wie kann ich die Login-Versuche für Benutzer in Laravel 4 beschränken?

$data = Input::all(); 
    $rules = array(
     'username' =>'required|', 
     'password' => 'required|min:6' 
    ); 
    $validator = Validator::make($data, $rules); 
    if($validator->passes()) 
    {    
     $user = array(
      'username'=> Input::get('username'), 
      'password' => Input::get('password'), 
      'active'=>1,       
     ); 

     if(Auth::attempt($user)) 
     { 
       if((Auth::user()->isBuyer())) 
       { 
        return Redirect::route('customer')->with(['success' => 'Welcome <strong style="color:black">'.Auth::user()->name .'</strong>']); 
       } 
       elseif((Auth::user()->isSeller())) 
       { 
        return Redirect::route('seller')->with(['success' => 'Welcome <strong style="color:black">'.Auth::user()->name .'</strong>']); 

       } 
       else 
       { 
        return Redirect::route('dashboard')->with(['success' => 'Welcome <strong style="color:black">'.Auth::user()->name.' </strong>']); 

       }  
     } 
     return Redirect::back() 
      ->with(array(
       'error' => 'Your email and password combination is invalid or Verify your email first' 
      )); 

    } 
    return Redirect::back() 
     ->withInput() 
     ->withErrors($validator); 

} 

, die meine Controller-Funktion für die Protokollierung ist in

+0

Sie könnten Ihrer Benutzertabelle eine Spalte "Versuch" hinzufügen. Inkrementieren Sie es jedes Mal, wenn der Benutzer versuchte, es zu protokollieren und überprüfen Sie die Gesamtzahl der Versuche – Wistar

Antwort

0

Es gibt so viele Wege, das zu tun. Aber unten sind üblich und ich normalerweise.

1.) Fügen Sie die Spalte "Versuch" zur Benutzertabelle hinzu und erhöhen Sie sie jedes Mal, wenn sich der Benutzer nicht anmelden kann. Setzen Sie die Spalte zurück auf 0, wenn der Benutzer erfolgreich angemeldet ist.

2.) Erstellen Sie Sitzung "Versuch" und erhöhen Sie jedes Mal, wenn der Benutzer sich nicht anmelden konnte. Setzen Sie die Sitzung auf 0 zurück, wenn der Benutzer erfolgreich angemeldet ist. Sie können den Benutzer auch für die Anzahl der Minuten sperren.

Aber ich bevorzuge die Option 1, so dass der Benutzer sich nicht anmelden kann, auch wenn er einen anderen Browser verwendet.

+0

vielen Dank – Tongi

+0

Ihr Willkommen, ich hoffe, es hilft. –

+0

Ich habe Option 1 versucht und es funktioniert perfekt, danke – Tongi

Verwandte Themen