Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 上次插入的id/最新插入的id功能代码点火器_Php_Database_Codeigniter - Fatal编程技术网

Php 上次插入的id/最新插入的id功能代码点火器

Php 上次插入的id/最新插入的id功能代码点火器,php,database,codeigniter,Php,Database,Codeigniter,代码: 看法 在所有这些之后,它会显示一个错误 消息:未定义变量:数据 我不确定流程哪里出错了,或者我是否犯了语法错误。如果有人知道/精通insert_id(),你能指出我到底错在哪里吗?不管怎样,我做了研究,并在网上得到了关于插入id有多糟糕的结果。我不确定它是真是假,但我大部分被重定向到论坛,在那里插入id返回null,有人说这是一个bug。我希望不是这样。根据您的评论,您必须对控制器进行一些更改 function show($data) { $this->lo

代码:

看法

在所有这些之后,它会显示一个错误

消息:未定义变量:数据


我不确定流程哪里出错了,或者我是否犯了语法错误。如果有人知道/精通insert_id(),你能指出我到底错在哪里吗?不管怎样,我做了研究,并在网上得到了关于插入id有多糟糕的结果。我不确定它是真是假,但我大部分被重定向到论坛,在那里插入id返回null,有人说这是一个bug。我希望不是这样。

根据您的评论,您必须对控制器进行一些更改

function show($data)
    {
        $this->load->view('sampleresult',array("data"=>$data));
    }
您可以在视图中以
$data
的名称获取插入的id

例如:

echo $data;
编辑:根据您在回答中的评论,对于模型中的多行插入,请添加以下代码

$id_arr = array();
foreach($sample_data as $sample)
{

   $this->db->insert('sample', $sample);
   $id_arr[] = $this->db->insert_id();
}
return $id_arr;
现在在您的视图中,您将获得$data中的ID

foreach($data as $id)
{
   echo $id;
}

在控制器或视图中哪里会出现错误?视图,显然是来自模型的变量$data传递到控制器,然后传递到视图。您是否愿意检查我是如何从那里返回变量的,并告诉我是否做错了什么,也许函数使用了错误?如果我循环并插入5行,这是否有效。例如,我有一个自动递增的id。所以我应该期望它是,0,1,2,3,4,对吗?然后你必须在你的模型中的数组中存储id。让我更新我的回答你帮了大忙。顺便提一下最后一个问题,为什么我必须将变量$data作为数组传递给视图?这一部分,array(“data”=>$data))CI将在视图文件中提取具有其键名名称的数组值。所以我们只需要将其作为数组传递。你是说关联数组,对吗?比如,foreach($key=>$value的数据)
function show($data)
    {
        $this->load->view('sampleresult',array("data"=>$data));
    }
echo $data;
$id_arr = array();
foreach($sample_data as $sample)
{

   $this->db->insert('sample', $sample);
   $id_arr[] = $this->db->insert_id();
}
return $id_arr;
foreach($data as $id)
{
   echo $id;
}