编程语言
首页 > 编程语言> > php – 检查Checkbox时的Laravel商店价值

php – 检查Checkbox时的Laravel商店价值

作者:互联网

我在Laravel中存储了多个值.在表单中,我有每个输入的复选框,如果选中该输入的复选框,我想存储值.我面临的问题是无论我检查哪个复选框,它始终从第一个输入值保存.如果我检查一个选项,它将存储第一个值.如果我检查2个选项,它将存储第一个和第二个值,依此类推.

这是复选框的表单

<input type="checkbox" name="checked[]" value="{{ $employee->id }}">

商店方法

public function store(Request $request)
    {
        foreach ($request->employee_id as $key => $val) {
            $payrolls = new Payroll;
            if (isset($request->checked[$key])) {
                $payrolls->basic = $request->basic[$key];
                $payrolls->employee_id = $val;
                $payrolls->save();
            }
        }

        return redirect('/');
    }

解决方法:

方法是通过键检查,但在检查的数组中你需要按值搜索,使用方法in_array()

public function store(Request $request)
{
    foreach ($request->employee_id as $key => $val) {
        $payrolls = new Payroll;
        if (in_array($val, $request->checked)) {
            $payrolls->basic = $request->basic[$key];
            $payrolls->employee_id = $val;
            $payrolls->save();
        }
    }

    return redirect('/');
}

标签:php,laravel,html,laravel-5-6
来源: https://codeday.me/bug/20190701/1347413.html