Mysql
 sql >> Database >  >> RDS >> Mysql

Il sistema di autenticazione Laravel può utilizzare un database esistente?

Puoi eseguire l'autenticazione direttamente, se hai bisogno:

$user = User::where('email', Input::get('email'))->first();

if( $user && $user->password == md5(Input::get('password')) )
{
    Auth::login($user); /// will log the user in for you

    return Redirect::intended('dashboard');
}
else
{
   /// User not found or wrong password
}

Nota che le password con hash di Laravel sono davvero sicure e quelle con hash, diciamo, MySQL, sono l'opposto. Così puoi convertire le tue password ogni volta che il tuo utente effettua il login, senza chiedergli di farlo:

$password = Input::get('password');

$email = Input::get('email');

if (Auth::attempt(array('email' => $email, 'password' => $password)))
{
    return Redirect::intended('dashboard');
}
else
if( $user && $user->password == md5($password) )
{
    Auth::user()->password = Hash::make($password);

    Auth::user()->save();

    return Redirect::intended('dashboard');
}
else
{
    /// User not found or wrong password
}