【发布时间】:2021-06-15 20:00:59
【问题描述】:
我正在与 Codeigniter 合作,为销售人员制定销售目标表格。 他们必须为每个产品、地区、年份等输入值。 产品和地区已经通过现有数据库获得:无需设置规则(参见控制器)。
当我检查帖子时(使用 Codeigniter 的 enable_profiler),我得到了这个:
问题是这些数据没有插入到数据库表中。 我阅读和测试了很多,但总是被屏蔽。
这是我的模型:
public function add($params)
{
$this->db->insert($this->table, $params);
return $this->db->insert_id();
}
我的控制器:
$this->load->library('form_validation');
$this->form_validation->set_rules('year', 'Year', 'required|integer');
$this->form_validation->set_rules('prevision', 'Prevision', 'required');
$this->form_validation->set_rules('value', 'Value', 'required|integer');
if ($this->form_validation->run()) {
$params = array(
'year' => $this->input->post('year'),
'prevision' => $this->input->post('prevision'),
'locality_id' => $this->input->post('locality'),
'product' => $this->input->post('product'),
'value' => $this->input->post('value'),
);
$this->Objectif_model->add($params);
redirect('admin/objectif');
} else {
$this->layout('admin/objectif/add');
}
我对输入的看法:
<?php foreach ($products as $product) : ?>
<tr class="form-group">
<td class="bg-warning">
<?= $product->grp_product; ?>
</td>
<td class="bg-warning product">
<?= $product->code; ?>
</td>
<?php foreach ($localities as $locality ) : ?>
<td>
<input type="text" class="form-control valeur" placeholder="Value k€" name="value[]" data-validation="number" data-validation-ignore="./" data-validation-optional="true" />
<input type="text" name="year[]" />
<input type="text" name="prevision[]" />
<input type="text" name="product[]" value="<?= $product->code ?>" />
<input type="text" name="localite_id[]" value="<?= $locality->id ?>" />
</td>
<?php endforeach; ?>
</tr>
<?php endforeach; ?>
希望你能帮助我。
【问题讨论】:
-
但总是被阻止。:你能告诉我们错误信息吗,同时检查
$this->tableecho 的内容,谢谢 -
没有错误信息。什么都没有发生(表中没有数据)
-
你试过
echo '<pre>'; print_r($params); die();调试你的模型函数add() -
我收到“消息:未定义变量:参数”
-
我建议您按照本教程进行操作:codeigniter.com/userguide3/libraries/…
标签: forms loops codeigniter input