当我从会话中获取数据时,我是否必须在写入数据库之前再次验证它们?

时间:2018-10-06 12:33:29

标签: php laravel session

验证后,我将数据存储在此函数的会话中。

  public function result(Request $request)
{
    $request->validate([
        'idgroup' => [
                'required', 'numeric', new ExistingGroupMembers, new AdminGroupRequest
            ]
        ]);

    $group = $request->idgroup;
    $groupname = Group::where('id', $group)->select('name')->first();
    $members = V_Member::where([['idgroup', $group],['iduser', '<>', Auth::id()]])->select('iduser', 'username')->get();

    Session::put('exclusion_groupid', $group);
    Session::put('exclusion_groupname', $groupname->name);

    return redirect()->route('user.exclusion');
}

然后我将它们放入另一个必须存储数据的函数中。在这里您可以看到商店功能。我没有进行验证,因为我之前已经在函数中验证了$ idgroup变量。

public function store(Request $request)
{   
    $request->validate([
        'member' => [
                'required', 'numeric', new UserPartOfGroup, new MemberAdminRequest
            ]
        ]);

    $iduser = $request->member;
    $idgroup = Session::get('exclusion_groupid');
    $m = Member::where([['member', $iduser],['idgroup', $idgroup]])->first();
    $m->delete();

    $iduser = $m->member;

    return redirect()->action('ExclusionController@create')->with('success', 'Created');
}

他们有没有办法操纵来自用户(黑客)的已存储会话数据?目前,我将会话数据存储在文件中,如何高效运行?存储在文件,数据库还是Cookies中?最佳和最安全的方法是什么?

0 个答案:

没有答案