加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 插入批处理数据数组?

发布时间:2020-12-13 22:32:21 所属栏目:PHP教程 来源:网络整理
导读:我想通过insert_batch插入以下数据,如下面的数据库表( mysql)中的示例所示: HTML: input name="u_id[0][0]" value="76"input name="un[0][0]" value="1"input type="text" name="ue[0][0]" value="11"input type="text" name="up[0][0]" value="111"input
我想通过insert_batch插入以下数据,如下面的数据库表( mysql)中的示例所示:

HTML:

<input name="u_id[0][0]" value="76">

<input name="un[0][0]" value="1">
<input type="text" name="ue[0][0]" value="11">
<input type="text" name="up[0][0]" value="111">



<input name="u_id[1][0]" value="77">

<input name="un[1][1]" value="2">
<input type="text" name="ue[1][1]" value="22">
<input type="text" name="up[1][1]" value="222">

<input name="un[1][2]" value="3">
<input type="text" name="ue[1][2]" value="33">
<input type="text" name="up[1][2]" value="333">

PHP:

$u_id       = $this->input->post('u_id');
$un       = $this->input->post('un');
$up       = $this->input->post('up');
$ue       = $this->input->post('ue');

$data = array();
foreach ($un as $idx => $name) {
    $data[] = array(
        'u_id' => $u_id[$idx],'un' => $un[$idx],'up' => $up[$idx],'ue' => $ue[$idx],);
};
$this -> db -> insert_batch('units',$data);

我想插入他们这样:

应该如何更改php代码和HTML代码?我该怎么办?

解决方法

我假设您正在使用CodeIgniter,并且您要插入的数据库表的名称称为“单位”,其“id”列是自动增量.

我使用调用Database类的帮助程序($this-> db-> insert_string())从CodeIgniter用户指南版本2.0.3开始我的解决方案.

foreach ($data as $row)
{
    $error_code = $this->db->insert_string('units',$row); 
}

参见http://codeigniter.com/user_guide/database/helpers.html

Database类提供的insert_string函数似乎采用关联数组,从内部元素构建INSERT语句,执行它然后返回数字错误代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读