302 is expected if you are redirecting, no?
Also, you are redirecting to a POST route here... redirect('/acessar')...?
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Hello, I'm using laravel 5.4 and when I submit the login form, I get status 302 and it is not sent to the database and I'm going back to the form page.
Controller
public function getLogin(Request $request)
{
$view = property_exists($this, 'loginView')
? $this->loginView : 'empresaauth.authenticate';
if (view()->exists($view)) {
return view($view);
}
return view('site.usuario.login-empresa');
}
public function postLogin(Request $request)
{
// Confere os dados do form com o banco de dados
$dados = array(
'email' => $request->input('email'),
'password' => $request->input('senha'),
);
// Faz a tentativa de realizar o login e confere os dados com a model.
if (Auth::guard('web_empresa')->attempt($dados)) {
// Se conferir ele redireciona para a rota que está protegida, dentro da midlleware.
return redirect('/empresa/dashboard');
} else {
$mensagem = array(
'type' => 'primary',
'retorno' => 'E-mail e Senha não conferem com nossos registros'
);
return redirect('/login/empresa')->with('status', $mensagem['type'])
->with('retornomensagem', $mensagem['retorno']);
}
}
public function logout()
{
Auth::guard('web_empresa')->logout();
Session::flush();
return redirect('/');
}
Routes
Route::group (['middleware' => ['empresaauth:web_empresa']], function () {
Route::get('/empresa/dashboard', ['as' => 'site.empresa.index', 'uses' => 'Site\EmpresaController@inicio']);
});
// LOGIN DE EMPRESAS
Route::get('/login/empresa', ['as' => 'site.empresa.login', 'uses' => 'Site\EmpresaController@getLogin']);
Route::post('/acessar', ['as' => 'site.empresa.acesso', 'uses' => 'Site\EmpresaController@postLogin']);
Route::get('/login/empresa/logout', ['as' => 'site.empresa.logout', 'uses' => 'Site\EmpresaController@logout']);
Kernel
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'web_empresa' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
//\Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
//\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
/**
* The application's route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [
//'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'empresaauth' => \App\Http\Middleware\EmpresaAuthenticate::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'auth.mediador' => \App\Http\Middleware\Mediador::class,
'auth' => \App\Http\Middleware\Authenticate::class,
];
}
Auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
'web_empresa' => [
'driver' => 'session',
'provider' => 'empresas',
],
],
_______
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Usuario::class,
],
'empresas' => [
'driver' => 'eloquent',
'model' => App\Empresa::class,
],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
],
That does not answer the question
From $fillable, your table contains senha and not password
plus you don't say if passwords use bcrypt
Please or to participate in this conversation.