我正在使用“CodeIgniter-3.1.3”。当我更新数据时,会出现如下错误。但是我的数据保存在数据库中。我找不到问题所在。我的模型功能与版本有关吗?
在 Controller 中
public function saveUpdateData(){
$updateDataArray = array(
"fname" => $_POST['fname'],
"lname" => $_POST['lname'],
"username" => $_POST['user'],
"userlevel" => $_POST['userlevel'],
"contact" => $_POST['contact_no']
);
$whereArr=array("user_id"=>$this->input->post("user_id"));
$rst = $this->MyModel->updateData("admin", $updateDataArray, $whereArr);
if ($rst) {
echo "updated";
}
else{
echo "error";
}
}
在模型中
function updateData($tablename, $data_arr, $where_arr) {
try {
$this->db->update($tablename, $data_arr, $where_arr);
$report = array();
$report['error'] = $this->db->_error_number();
$report['message'] = $this->db->_error_message();
return $report;
} catch (Exception $err) {
return $err->getMessage();
}
}
enter image description here
最佳答案
像这样
在模型中
function updateData($tablename, $data_arr, $where_arr)
{
if (!$this->db->update($tablename, $data_arr, $where_arr)) {
$result = $this->db->error();
}
else {
return TRUE;
}
}
在 Controller 中
$rst = $this->MyModel->updateData("admin", $updateDataArray, $whereArr);
if ($rst == TRUE) {
echo "updated";
}
else{
print_r($rst);
}
阅读Error Handling Codeigniter