作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在数据库中有show_header
和show_footer
字段,值可以是1或0。
<input type="checkbox" name="show_header" checked="checked" value="1">
<input type="checkbox" name="show_footer" checked="checked" value="1">
假设 show_header
和 show_footer
在数据库中设置为 1 并且您在表单中取消选中它们,请求输入将不包含 show_header
和 show_footer
字段,因为它未被选中。
那么我怎样才能解决这个问题,将数据库中的 show_header
和 show_footer
更新为 0?
示例:
$page = Page::where('user_id', 1);
$page->update($request->all());
如果你这样做:
dd($request->all())
你不会找到 show_header
和 show_footer
因为复选框没有被选中,所以通过 $page->update($request->all()) ;
它不能在数据库中将show_header
和show_header
设置为0。
最佳答案
您可以在更新前检查并将默认值设置为 0
,因此如果属性不在此处,只需将它们设置为 0
:
$page = Page::where('user_id', 1);
$data = $request->all();
$data['show_header'] = $request->input('show_header',0);
$data['show_footer'] = $request->input('show_footer',0);
$page->update($data);
希望这对您有所帮助。
关于php - 未选中的复选框值以更新请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40739168/
我是一名优秀的程序员,十分优秀!