我正在编写更新方法来更新表,我也想将这种更新方法用于所有更新操作。我正在传递表名,数据更新&条件但它不能正常工作。以下是我的代码:
My_controller.php
$data = array(
'column-1' => $this->input->post('form_name1'),
'column-2' => $this->input->post('form_name2'),
'column-3' => $this->input->post('form_name3'),
'column-4' => $this->input->post('form_name4')
);
$result = $this->my_model->common_update('my_table_name',$data,$user_id );
if($result)
{
$this->session->mark_as_flash('message');
$this->session->set_flashdata('message', 'table updated.');
redirect(base_url().'index.php/my_page');
}
else{
$this->session->mark_as_flash('message');
$this->session->set_flashdata('message', "Table doesn't Updated.");
$this->load->view('template', $data);
}
My_model.php
public function common_update( $table, $data = array(), $where )
{
$this->db->where('id', $where);
$query = $this->db->update($table,$data);
return $this->db->affected_rows() == 1 ? true : false ;
}
我的数据库表结构:表名 - " my_table_name"
Name Type
id int(10) AUTO_INCREMENT primary_key
column-1 varchar(20)
column-2 varchar(20)
column-3 varchar(20)
column-4 varchar(20)
任何人都可以帮我解决这个问题吗?感谢。
答案 0 :(得分:0)
更新。 $ this代表查询......并在查询之前调用它
public function common_update( $table, $data = array(), $where )
{
$this->db->where('id', $where);
$query = $this->db->update($table,$data);
return $this->db->affected_rows() == 1 ? true : false ;
}
与
public function common_update( $table, $data = array(), $where )
{
$query = $this->db->update($table,$data);
$this->db->where('id', $where);
return $this->db->affected_rows() == 1 ? true : false ;
}
问候:)