Я использую Codeigniter Restful, и я хотел бы сделать метод обновления.
Моя проблема в том, что я пытаюсь выполнить обновление, не проверяя, являются ли поля значений пустыми, обновление удаляет пустые поля.
Поэтому я попытался контролировать, является ли поле пустым до обновления, и в результате я получаю эту ошибку: Вы должны использовать метод "set" для обновления записи.
Как мне сделать, чтобы обновить значения в БД и не удалять пустые поля?
Это контроллер
public function person_patch()
{
$id = $this->uri->segment(3);
$data = array();
if(($this->input->post('fiscalcode') != '')){
$data['fiscalcode']=$this->input->post('fiscalcode');}
if(($this->input->post('name') != '' )){
$data['name']=$this->input->post('name');}
var_dump($_POST);
$this->load->model('Person_model');
$query = $this->Person_model->patch($id, $data);
}
Это модель:
public function patch($id, $data)
{
$result = $this->db->update('Persons', $data, array('id' => $id));
return $result;
}
Так, например, если я передаю с помощью формы только поле (например, fiscalcode), теперь я получаю сообщение об ошибке. Если я не проверю, является ли поле пустым, имя поля становится пустым.