【发布时间】:2017-07-17 19:43:27
【问题描述】:
我有一个带有一些复选框的表单,我想将复选框的所有值保存在多条记录中,例如每条记录保存一个值
for($i=0; $i > $checkboc_count; $i++) {
$destinatario = new Destinatario();
$destinatario->acao_id = $acao1->id;
if ($request->outros != null) {
$destinatario->outros = $request->outros;
}
$destinatario->grupo_id = $request->get('grupos.' + $i);
$destinatario->save();
}
现在我有了这个,但它不起作用。记录没有保存,也没有返回错误。
谁能帮帮我? 谢谢
更新:
视图代码:
@foreach($grupo as $grupos)
<label for="grupoid" class="control-label">{{$grupos->nome}}</label>
<input type="checkbox" name="grupos[]", value="{{$grupos->id}}", id="{{$grupos->nome}}">
@endforeach
<label for="grupoid" class="control-label">Outros</label>
<input type="checkbox" name="grupos", value="outros", id="outros" onclick="show_hide('#show')">
顺便说一句,现在,我无法获取复选框的值,可能我会尝试以错误的方式获取它们 -
【问题讨论】:
-
究竟是什么不起作用?您是否使用
$request获得选中的复选框值?请记住,只有选中的复选框才会提交! -
是的,我知道,现在发生的情况是,当我提交时,已选中复选框的记录未保存,例如,用户选中了 3 个具有不同值的复选框,我想创建 3 个带有用户和复选框的记录,一个一个,例如 user1----value1, user1---value2, user1---value3
-
正如我所提到的,您收到
request值了吗?$checkboc_count是如何以及在哪里设置的? -
$checkbox_array = $_POST['grupos']; $checkboc_count = count($checkbox_array);
-
您的第二个输入只有
grupos,因此它会用一个输入覆盖其他输入!也尝试将其更改为grupos[]。