I'm trying to make a login with laravel however, when I use Auth :: Attempt ........ always return false. I have reviewed the code several times, but still can not find the error. could guide me please ?? thanks :)
Model:
<?php
namespace AppModels;
use IlluminateAuthAuthenticatable;
use IlluminateDatabaseEloquentModel;
use IlluminateAuthPasswordsCanResetPassword;
use IlluminateContractsAuthAuthenticatable as AuthenticatableContract;
use IlluminateContractsAuthCanResetPassword as CanResetPasswordContract;
class Users extends Model implements AuthenticatableContract, CanResetPasswordContract
{
use Authenticatable, CanResetPassword;
protected $table = 'users';
}
controller:
<?php
namespace AppHttpControllers;
use IlluminateSupportFacadesAuth;
use IlluminateHttpRequest;
use Validator;
use AppHttpControllersController;
use AppHttpRequests;
use AppModelsUsers as user;
class UserController extends Controller
{
public function PreLogin(Request $request){
$validator = Validator::make($request->all(),[
'EmailLogin' => 'require|email',
'PasswordLogin' => 'require|min:6'
]);
if($validator->fails()){
return response()->json([
'success' => false,
'error' => $validator->errors()->toArray()
]);
}else{
return $this->Login($request);
}
}
private function Login(Request $request){
if(Auth::attempt(['email' => $request->EmailLogin, 'password' => $request->PasswordLogin])){
return response()->json([
'success' => true
]);
}else{
return response()->json([
'success' => false,
'error' => 'not login'
]);
}
}
}
auth.php:
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => AppModelsUsers::class,
],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
],
Aucun commentaire:
Enregistrer un commentaire