Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

wiznox's avatar

After login and create session redirect to login

Hi all My laravel app which is i am using apis for jwt token and for web routes for using session but my web login not working first my login code is correct and generate session but auth is redirect to login page please solve my problem

This is my route list

+--------+----------+---------------------+----------------+------------------------------------------------------+----------------+
| Domain | Method   | URI                 | Name           | Action                                               | Middleware     |
+--------+----------+---------------------+----------------+------------------------------------------------------+----------------+
|        | GET|HEAD | admin               | adminlogin     | App\Http\Controllers\Admin\AdminController@login     | web            |
|        | GET|HEAD | admin/addUser       |                | App\Http\Controllers\Admin\AdminController@addUser   | web,auth       |
|        | DELETE   | admin/delete        |                | App\Http\Controllers\Admin\AdminController@delete    | web,auth       |
|        | POST     | admin/doAddUser     |                | App\Http\Controllers\Admin\AdminController@doaddUser | web,auth       |
|        | GET|HEAD | admin/edit/{id}     |                | App\Http\Controllers\Admin\AdminController@edit      | web,auth       |
|        | GET|HEAD | admin/home          | admindashboard | App\Http\Controllers\Admin\AdminController@index     | web,auth       |
|        | POST     | admin/login         | postLogin      | App\Http\Controllers\Admin\AdminController@doLogin   | web            |
|        | POST     | admin/logout        |                | App\Http\Controllers\Admin\AdminController@logout    | web,auth       |
|        | POST     | admin/profile       |                | App\Http\Controllers\Admin\AdminController@profile   | web,auth       |
|        | POST     | admin/updateUser    |                | App\Http\Controllers\Admin\AdminController@update    | web,auth       |
|        | GET|HEAD | admin/user          |                | App\Http\Controllers\Admin\AdminController@users     | web,auth       |
|        | GET|HEAD | api/user            |                | Closure                                              | api,auth:api   |
|        | GET|HEAD | api/v1/user         |                | App\Http\Controllers\UsersController@show            | api,jwt.verify |
|        | POST     | api/v1/user         |                | App\Http\Controllers\UsersController@create          | api            |
|        | PUT      | api/v1/user         |                | App\Http\Controllers\UsersController@update          | api,jwt.verify |
|        | POST     | api/v1/user/login   |                | App\Http\Controllers\UsersController@login           | api            |
|        | POST     | api/v1/user/logout  |                | App\Http\Controllers\UsersController@logout          | api,jwt.verify |
|        | GET|HEAD | api/v1/user/me      |                | App\Http\Controllers\UsersController@me              | api,jwt.verify |
|        | GET|HEAD | api/v1/user/refresh |                | App\Http\Controllers\UsersController@refresh         | api,jwt.verify |
|        | DELETE   | api/v1/user/{id}    |                | App\Http\Controllers\UsersController@delete          | api,jwt.verify |
+--------+----------+---------------------+----------------+------------------------------------------------------+----------------+

This is My login code

    if (isset($request->validator) && $request->validator->fails()) {
    return redirect('/admin')
    ->withErrors($request->validator) // send back all errors to the login form
    ->withInput(Input::except('password')); // send back the input (not the password) so that we can repopulate the form
    }else {
        $userdata = array(
            'email'     => $request->input('email'),
            'password'  => $request->input('password')
        );  
if (Auth::attempt($userdata)) {
    dd(Auth::attempt($userdata));
    return redirect()->intended('admin/home');
} else {        
    return redirect('/admin');
}  

}

0 likes
3 replies
tisuchi's avatar

@wiznox

Have you simply try this way?


// Validation.
$validator = Validator::make($request->all(), [
    'email' => 'required',
    'password' => 'required'
]);

if ($validator->fails()) {
    return redirect()
        ->back()
        ->withErrors($validator)
        ->withInput();
}

$credentials = $request->only('email', 'password');

if ( Auth::attempt($credentials) ) {
    // Login Success
    // Redirect
}

Now, in your form use {{ old('email') }} only, don't populate old data in the password field.

1 like
wiznox's avatar

Simply try i don't understand But

if ( Auth::attempt($credentials) ) { // Login Success // Redirect }

Login is success but after redirect middleware auth is redirect to login

wiznox's avatar

And thanks for your response but my problem is solved.

Please or to participate in this conversation.