注意:尝试从html表单

时间:2018-06-12 22:19:23

标签: php

我有一个表单,允许用户添加随后插入数据库的自定义问题。出于某种原因,当单击提交按钮时,我收到错误:

A PHP Error was encountered Severity: Notice Message: Array to string conversion

当用户点击+按钮时,它会添加另一个具有相同名称问题[]

的字段

这允许用户只需添加任意数量的问题。数据是这样提交的 - (当我检查萤火虫中的参数时)

问题[] [...] 0你最喜欢的甜点是什么? 1你喜欢狗吗? 我的HTML 表单输入

    <div class="row">
    <div class="col-10">
    <div class="form-group">
    <input type="text" class="form-control" id="question" name="question[]" value="" placeholder="Custom Question">

    </div>    </div>
    <div class ="col-2">  
    <button class="btn btn-success" type="button" 
onclick="education_fields();"><i class="fa fa-plus"></i></button>

服务器代码插入数据

$insert1 = [];
$fields = $this->input->post();

foreach ($fields as $k => $v) {


$insert1['label'] = $this->input->post($k, true);

$this->db->insert("applicationquestions", $insert1);
}

任何想法我做错了什么,以及实现我需要的最好方法?

1 个答案:

答案 0 :(得分:0)

如果您在html表单上使用与[]相同的名称,则您的$_POST在该密钥上有一个数组。所以你的$k变量是一个数组。

尝试

foreach ($fields['question'] as $k => $v) {
    $insert1['label'] = $this->input->post($k, true);

    $this->db->insert("applicationquestions", $insert1);
}