2017-10-11 76 views
2

當我嘗試更新表格時,我得到一個錯誤。 error imagecodeigniter和mysql更新錯誤?

有我的控制器代碼。

$this->hr_user->insert_user($info); 

     $n=explode('--', $info['user_code']); 
     $temp=$n[1]; 
     $lnum=ltrim($temp,'0'); 
     //print_r($lnum); 
     //echo "<br>lastnumber".$lnum; 
     $id=$info['user_type']; 
     echo $id.''.$lnum; 



     $this->hr_user->update_number($id,$lnum); 



     redirect('hrm/index'); 

這是我的型號代碼。

public function update_number($id,$lnum) 
{ 
    $this->db->where('em_id',$id); 
    $this->db->update('tbl_emaster.em_lastnumber',$lnum); 

} 
+0

你試圖回答這些問題? –

回答

1

你有MySQL的錯誤解釋每一件事。您的查詢命令不會產生一個合格的查詢,請嘗試:

public function update_number($id,$lnum) 
{ 
    $this->db->set('eenter code herem_lastnumber', '$lnum'); 
    $this->db->where('em_id',$id); 
    $this->db->update('emaster'); 
} 

更多信息www.codeigniter.com

1

Mysql的更新查詢語法是:

UPDATE table_name SET field1 = new-value1, field2 = new-value2 
[WHERE Clause] 

你可以看到,有SET後場。 而且由於您的CI更新語法,列名不會被傳遞。而通過這一點,你應該通過陣列作爲$this->db->update('tbl_emaster.em_lastnumber',$lnum);

第二個參數所以,你需要改變這樣的:

$this->db->update('tbl_emaster',array('em_lastnumber' => $lnum); 
+0

謝謝,它的作品。 – Majeed

+0

@Majeed,您的歡迎。樂於幫助。 –

1

變化查詢

public function update_number($id,$lnum) 
{ 
    $data=array('em_lastnumber'=>$lnum); 
    $this->db->where('em_id',$id); 
    $this->db->update('tbl_emaster',$data); 

}