密码保护Laravel中的页面具有唯一密码

时间:2017-04-11 12:46:58

标签: php laravel laravel-5

我需要在laravel中设置受密码保护的页面(使用5.4),我数据库中的每个页面条目都有一个密码字段。

如果密码输入正确,我希望只能访问该页面...

我认为这是有道理的,除了使用laravel内置的auth功能外,我似乎无法找到其他任何内容...

提前致谢。

1 个答案:

答案 0 :(得分:3)

这是一件非常简单的事情......

创建一个包含密码字段和隐藏ID字段的表单,您可以在其中存储要访问的页面的ID。

当用户提交密码时,请检查密码是否与数据库中的密码匹配..

if (Hash::check('enetered-password', $hashedPassword)) {
    // The passwords match...
}

如果是,请将页面ID存储在会话中的数组中。下次用户想要访问该页面时,检查该数组中是否存在该ID,如果是,则重定向到该页面,否则重定向到密码表单页面。

将中间件添加到受保护的页面,检查用户是否拥有权限以及重定向更为明智。

一旦会话到期(即使用注销),所有数据都将被销毁,因此如果他们再次登录,他们需要再次输入页面密码。