Laravel-在数据库中存储多个复选框表单值

格罗苏·杜米特鲁(Grosu Dumitru)

所以我有这个代码

视图:

<div id="checkboxes">
                         <input type="checkbox" class="checkbox" name="services" value="{{ $service->id }}" id="{{ $service->id }}" />
                         <label class="whatever" for="{{ $service->id }}"><p class="serv-text"> {{ $service->service_name }} + ${{ $service->price }} </p></label>
                             </div>

控制器:

  public function store(Request $request)
    {
       orders::create(Request::all());
        return 'test';
    }

模型:

class orders extends Model
{
    protected $fillable = [
    'category', 
    'services',
    'total_price',
    'user_id',
    'status',
    'user_id'];
}

当我尝试提交表单时,即使在提交表单时选中了多个复选框,在服务数据库中也只有一个数字。我试图在Google上找到解决方案,但一无所获。

卢卡什·伊萨克(LukášIrsák)

如果您有多个这样的复选框:

<input type="checkbox" name="services" value="1"/>
<input type="checkbox" name="services" value="2"/>
<input type="checkbox" name="services" value="3"/>

它将仅向服务器发送一个值,因为名称必须唯一。解决方法是使用数组输入:

<input type="checkbox" name="services[]" value="1"/>
<input type="checkbox" name="services[]" value="2"/>
<input type="checkbox" name="services[]" value="3"/>

然后,您可以在控制器中获取该输入并执行以下操作:

$services = $request->input('services');
foreach($services as $service){
 orders::create($service);
}

在Laravel中验证数组:

https://laravel.com/docs/5.7/validation#validating-arrays

有关输入数组的更多信息:

https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/input/checkbox#Handling_multiple_checkboxes

如何将表单输入数组转换为PHP数组

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 Laravel 中的复选框在数据库中存储是或否值

如何只检查laravel数据库中存储的复选框值?

如何将多个复选框值发送到laravel中的数据库?

如何在数据库的单个列中保存多个复选框值并使用laravel检索它

如何在数据库中的单个列中分别保存多个复选框值并使用 laravel 检索它?

如何在带有复选框laravel的表单中使用旧值或数据库中的值

laravel4使用迁移文件在数据库中添加复选框列

Laravel 根据数据库值设置复选框

保存多个复选框值并使用Laravel保存到数据库

显示在laravel中从数据库选中的复选框

根据Laravel中的复选框将字段的值提交给数据库

将复选框值保存到laravel中的数据库

如何将选定的复选框 ID 存储到我在 Laravel 8 上的数据库中

Laravel 6:如何在注册时将复选框值传递到数据库用户表中

如何接收多个复选框值并正确存储在数据库中?

从数据库获取选定的复选框-Laravel

Laravel-获取复选框值并更新数据库

如何将laravel复选框值插入数据库?

如何在Laravel中将复选框值插入数据库?

使用复选框更新数据库中的状态 - Laravel

如何根据 Laravel 中的数据库查询结果选中复选框?

Laravel表单复选框数据

使用 Laravel 中的复选框按多个值搜索

试图在数据库中存储多个值,但是我的表单仅注册一个(通过复选框)

在 Web 表单中选中复选框时如何自动将值存储在数据库中

在数据库中存储多维复选框

如果值存储在数据库中,如何获取复选框?

如何使用php在数据库的单列中插入多个复选框值

如何在数据库Laravel中存储多个图像