我试图在Codeigniter中更新数组,但我无法弄清楚语法。
错误: 遇到PHP错误 严重性:注意
消息:数组到字符串转换
文件名:database / DB_driver.php
行号:1525
public function allowregis()
{
$data = $this->input->post();
for($i= 0;$i < count($data["regis_id"]);$i++)
{
$allow[] = array('regis_id' => $data['regis_id'][$i],
'regis_status' => $data['regis_status'][$i],
'regis_approveresult' => $data['regis_approveresult'][$i],
);
}
$this->db->update('register',$allow,'regis_id');
redirect('/register/cheackactivityallow/');
}
答案 0 :(得分:0)
正如错误所说,您正在尝试使用期望将字符串传递给它的数组值($allow
)更新字段。
答案 1 :(得分:0)
在for循环中添加更新查询。
public function allowregis()
{
$data = $this->input->post();
$allow = array();
for($i= 0;$i < count($data["regis_id"]);$i++)
{
$allow[$i] = array('regis_id' => $data['regis_id'][$i],
'regis_status' => $data['regis_status'][$i],
'regis_approveresult' => $data['regis_approveresult'][$i],
);
$this->db->update('register',$allow[$i]);
}
redirect('/register/cheackactivityallow/');
}
答案 2 :(得分:0)
您可以使用codeigniter的update_batch函数获得所需的结果,因为您将通过错误将多维数组发送到更新函数。