2017-03-08 88 views
0

模塊笨數據庫更新手動

function update($id) 
{ 
    $this->db->where('id',$id); 
    $this->db->update('table', 'status=1'); 
} 

控制器

function test() 
{ 
    $this->load->model('model'); 
    $this->mdl_banners->update('1'); 
} 

我試圖手動更新我的數據庫的列。我嘗試了上述方法,但沒有奏效。請幫助我。

回答

0
$table='tableName'; // or get it as parameter in function 
$data=array('status'=>1); 
$this->db->WHERE('$id',$id); 
$this->db->update($table, $data); 

下面是我使用它在我的項目

的一個實時例子
public function updatePage($data,$menuId) 
{ 
    $item=array(
     'slug'=>$data['slug'], 
     'content'=>$data['content'] 
    ); 

    $this->db->WHERE('id',$menuId)->update('pages',$item); 
} 
+1

感謝,這是一個很大的幫助 – lazyme114

0

如果模型的名稱是mdl_banners,則控制器代碼必須是這樣的:

$this->load->model('mdl_banners_model'); 

$this->mdl_banners_model->update('1'); 

負載有加載模型名後跟下劃線,同爲函數後調用。

馬利克的回答正確指出的另一個問題,以及,你需要傳遞一個數組來更新():

$this->db->update('table', array('status'=>1)); 
0

//控制器

function test() 
{ 
$this->load->model('mdl_banners');  
$this->mdl_banners->update('1','1'); 
} 

//模型

function update($id,$s) 
{ 
$data=array('status'=>$s); 
$this->db->WHERE('$id',$id); 
$this->db->update(table, $data); 
} 

試試這個..