我正在使用 codeigniter REST API。我想使用更新 API 更新表,但出现错误。
这是我的 API 代码:
public function data_put(){
$data = $this->input->input_stream();
$this->User_model->updateuser($data);
$message = [
'firstname' => $data['firstname'],
'lastname' => $data['lastname'],
'email'=> $data['email'],
'phone'=> $data['phone'],
'address' => $data['address'],
'city' => $data['city'],
'state' => $data['state'],
'country' => $data['country'],
'postalcode' => $data['postalcode']
];
$this->set_response($message, REST_Controller::HTTP_CREATED);
}
型号:
public function updateuser($data){
$imp = "'" . implode("','", $data) . "'";
$this->db->query("CALL spupdateuser($imp)");
}
错误 PROCEDURE table.spupdateuser 的参数数量不正确;预期 10,得到 1
最佳答案
我猜你的 $data 是 JSON 格式,而不是数组。
你为什么不尝试一下 -
$datastrip = "'" . $data['firstname'] .','. $data['lastname'] .','.
$data['email'] .','. $data['phone'] .','.
$data['address'] .','. $data['city'] .','.
$data['state'] .','. $data['country'] .','.
$data['postalcode'] . "'"
然后
$this->User_model->updateuser($datastrip);
关于php - 其余 API 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50851547/