Authentication is the process of identifying the user credentials. In web applications, authentication is managed by sessions which take the input parameters such as email or username and password, for user identification. If these parameters match, the user is said to be authenticated.
LoginController.php
use App\Models\User;
use Illuminate\Support\Facades\Auth;
use Hash;
function login(Request $request){
$validated = $request->validate([
'username'=>'required|unique|max:255',
'password'=>'required',
]);
if(Auth::attempt($validated)) {
$request->session()->regenerate();
return redirect()->intended('dashboard');
}
returnback()->withErrors([
'email'=>'The provided credentials do not match our records.',
])->onlyInput('email');
}
RegisterController.php use App\Models\User; use Illuminate\Support\Facades\Auth; use Hash; public function store(Request $request) { $request->validate([ 'name' => 'required|string|max:250', 'email' => 'required|email|max:250|unique:users', 'password' => 'required|min:8|confirmed' ]); User::create([ 'name' => $request->name, 'email' => $request->email, 'password' => Hash::make($request->password) ]); $credentials = $request->only('email', 'password'); if(Auth::attempt($credentials)){ $request->session()->regenerate(); return redirect('dashboard')->withSuccess('You have successfully registered & logged in!'); } }
if (Auth::attempt(['email' => $email, 'password' => $password, 'active' => 1])) { // Authentication was successful... }
$user = new User();
$user->name = $name;
$user->email = $email;
$user->save();
Auth::login($user);