Laravel 用户登录

用户登录逻辑

public function login(Request $request)
{
    $usr = $request->get('usr');
    $pwd = md5($request->get('pwd'));
    $data = Admin::where('user_name', $usr)->where('password', $pwd)->first();
    if ($data) {
        $data['token'] = md5(time()) . Str::random(16);
        $data->save();
        $data->avatar = toAbsoluteUrl($data->avatar);
        return $this->success($data);
    } else {
        return $this->fail('登录失败');
    }
}

 用户信息修改

public function updateAdmin(Request $request)
{
    $id = $request->get('id');
    $avatar = $request->get('avatar');
    $name = $request->get('name');
    $password = $request->get('password');

    $data['user_name'] = $name;
    $data['avatar'] = $avatar;
    $data['password'] = md5($password);
    $data['token'] = md5(time()) . Str::random(16);
    $admin = Admin::find($id);
    $admin->fill($data);
    try {

        $admin->saveOrFail();
        return $this->success('用户信息修改成功');

    } catch (\Exception $exception) {
        return $this->fail('用户信息修改失败');
    }
}
Laravel 中,用户登录通常需要以下步骤: 1. 创建一个 Auth 控制器:可以使用以下命令创建一个 Auth 控制器: ```php artisan make:auth``` 这将会创建一个包含登录、注册、密码重置等功能的身份验证系统。 2. 创建用户模型:可以使用以下命令创建一个 User 模型: ```php artisan make:model User``` 3. 配置数据库:在 `.env` 文件中配置数据库连接信息。 4. 执行数据库迁移:可以使用以下命令执行数据库迁移: ```php artisan migrate``` 5. 创建登录表单:可以使用 Laravel 的表单生成器来创建一个登录表单。 6. 处理登录请求:在 Auth 控制器中,可以使用 `Auth` Facade 来处理用户登录请求,例如: ```php public function login(Request $request) { $credentials = $request->only('email', 'password'); if (Auth::attempt($credentials)) { // 登录成功 return redirect()->intended('/dashboard'); } // 登录失败 return redirect()->back()->withErrors([ 'email' => '邮箱或密码不正确', ]); } ``` 注意,`Auth::attempt()` 方法会尝试使用给定的凭据进行用户身份验证。如果验证成功,则会将用户实例存储在会话中并返回 `true`,否则返回 `false`。 7. 创建登出功能:可以使用以下代码来创建一个登出功能: ```php public function logout(Request $request) { Auth::logout(); $request->session()->invalidate(); $request->session()->regenerateToken(); return redirect('/'); } ``` 这样,用户就可以通过访问 `/logout` 路由来登出系统了。 以上就是 Laravel 用户登录的基本步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值