Home > Blockchain >  login function laravel not redirect me to home page always
login function laravel not redirect me to home page always

Time:12-08

class userController extends Controller
{
    //
    function login(Request $req)
    {
        $user = User::Where(['email'=>$req->email])->first();
        if($user || Hash::check($req->password, $user->$password))
        {
            return 'Username or password not matched';
        }
        else {
            $req->session('user', $user); 
            return redirect('/');
        }

    }
}

CodePudding user response:

for manually authentication, attempt() may be a better practice than Hash::check()

use Auth;

class userController extends Controller
{
    function login(Request $req)
    {
        $credentials = $req->only('email', 'password');
        if (Auth::attempt($credentials)) {
            $req->session()->regenerate();
            return redirect()->intended('/');
        }
        else {
            return 'Username or password not matched';
        }
    }
}

read Manually Authenticating Users for more details

CodePudding user response:

I deleted $password and replace it with password and make the code like this:

function login(Request $req)
{
    $user= User::where(['email' => $req->email])->first();
    if (!$user || !Hash::check($req->password, $user->password)) {
        return "Username or password is not matched";
    } else {
        $req->session()->put('user',$user);
        return redirect('/');
    }
}
  • Related