Codeigniter insert_batch 问题
Posted
技术标签:
【中文标题】Codeigniter insert_batch 问题【英文标题】:Codeigniter insert_batch issue 【发布时间】:2017-02-13 15:13:42 【问题描述】:我正在尝试使用 insert_batch 向数据库中插入多个值。但它向我显示错误。
控制器:
public function add()
$data['title'] = $this->input->post('title');
$data['file'] = $this->input->post('file');
$this->user->in();
型号:
public function in()
$data['title'] = $this->input->post('title');
$data['file'] = $this->input->post('file');
foreach ($title as $key => $n)
$insert = array(
'title' => $n,
'file' => $file[$key]
);
// echo $n."->".$file[$key].'<br>' ;
$this->db->insert_batch('title',$insert); //line 42 in user.php (error)
// return $query;
查看:
<?php echo form_open('location/add'); ?>
<div>
<input type="text" name="title[]"><br>
<input type="text" name="file[]">
</div>
<br><br>
<div>
<input type="text" name="title[]"><br>
<input type="text" name="file[]">
</div> <br><br>
<div>
<input type="text" name="title[]"><br>
<input type="text" name="file[]">
</div>
<input type="submit" name="" value="enter">
<?php echo form_close(); ?>
但是当我运行它时,它会显示如下错误:
发生数据库错误
您必须使用“set”方法来更新条目。
文件名:models/User.php
行号:47
【问题讨论】:
【参考方案1】:而不是这个
$insert = array(
'title' => $n,
'file' => $file[$key]
);
应该像下面这样
$insert[] = array(
'title' => $n,
'file' => $data['file'][$key]
);
而不是这个
foreach ($title as $key => $n) ...
使用
foreach ($data['title'] as $key => $n) ....
【讨论】:
如果我想上传这样的文件怎么办?<input type="file" name="file[]">
谢谢兄弟..它为我工作。但我无法将文件名插入我的数据库。你能帮我么。这是我的完整代码Code
你能帮我做这件事吗?
请检查我已经给出的链接,我认为这是您正在寻找的解决方案
我检查了那个链接,但我找不到这个问题的解决方案。唯一的问题是我没有得到文件名以上是关于Codeigniter insert_batch 问题的主要内容,如果未能解决你的问题,请参考以下文章
插入批处理,如果在Codeigniter 3 HMVC中有重复的密钥更新