如何在php数据库中返回所选id的值
我在数据库中插入一个csv文件。如何返回id并使用它插入到另一个表中。它始终显示数组到字符串的转换错误。“退货”有什么问题吗 这是我的控制器如何在php数据库中返回所选id的值,php,sql,codeigniter,Php,Sql,Codeigniter,我在数据库中插入一个csv文件。如何返回id并使用它插入到另一个表中。它始终显示数组到字符串的转换错误。“退货”有什么问题吗 这是我的控制器 public function uploadThree(){ $file = $_FILES['file']['tmp_name']; $handle = fopen($file,"r"); while(($fileop = fgetcsv($handle,1000,",")) !==false) { $ap
public function uploadThree(){
$file = $_FILES['file']['tmp_name'];
$handle = fopen($file,"r");
while(($fileop = fgetcsv($handle,1000,",")) !==false)
{
$appname = $fileop[0];
$servname = $fileop[1];
$ciname = $fileop[2];
$servid = $this->some_model->insertBulkServ($servname); //i tried to get the value here then insert below
$appid = $this->some_model->insertBulkSingleApp($appname);//i tried to get the value here then insert below
$this->some_model->insertBulkCI($ciname);
$this->some_model->ASMAP($appid,$servid);
}
if($success == TRUE)
redirect(base_url().'some_controller/uploadPage');
}
模型
您可能想要的是: $this->db->insert_id() 执行数据库插入时的插入ID号
更多信息:您需要这样做,这非常简单 在查询之后插入
$queryStr = "INSERT INTO appwarehouse.service(service) VALUES ('$service');";
使用此选项而不是选择
return $this->db->insert_id();
或者如果您确实需要返回对象
$queryStr = "SELECT id FROM appwarehouse.application_table WHERE app_name='$app_name' AND visibility = 'VISIBLE';";
$query = $this->db->query($queryStr);
返回id而不是对象
return $query->row()->id;
还有一件事需要注意。insert\u id是最后一个插入的id,因此您不必运行select查询来获取id
还可以使用
row()
选择单个记录result()
选择多条记录,以便获得一个数组。请参阅。它在返回$query->result()->id时显示未定义的$id;抱歉,它应该是row()
而不是result()
如果我想插入具有不同组合的相同条目该怎么办return$query->row()->id有问题;当我在insertBulkServ
中插入具有不同组合的相同值时,您只需插入一条记录并返回id,然后在insertBulkSingleApp
中将该id用于另一个组合,因此您无需担心。
return $query->row()->id;