2017-06-13 64 views
0

我想上传两列的一些数据并更新数据我已经配置了所有必要的东西。但我没能通过使用codeigniter update命令将这些数据更新到我的表中。MySQL行在codeigniter中没有正确更新

我的CI代码

$result_data = array(
     [profileid] => 4 
     [questionid] => 7 
     [clientid] => 15 
     [page_id] => 4 
    ); 


$updated_data = array(
      [optionid] => 31,32,33, 
      [option_score] => 1,2,3, 
      [answer_given] => 1 
     ); 

     $this->db->where($result_data); 
     $this->db->update('tbl_result_temp', $updated_data); 

当我试图通过更新代码更新用不执行正确的数据。 我的表格结构如下。 my table structure

table with data

任何一个可以告诉什么是错的?

+0

为什么[简档],为什么不简档? –

回答

0

我发现了一些错误的语法(在你的阵列结构的错误),

$result_data = array(
     'profileid' => 4, 
     'questionid' => 7, 
     'clientid' => 15, 
     'page_id' => 4 
    ); 

$updated_data = array(
      'optionid' => '31,32,33', 
      'option_score' => '1,2,3', 
      'answer_given' => 1 
     ); 

     $this->db->where($result_data) 
      ->update('tbl_result_temp', $updated_data); 
+0

让我知道它是否在工作?如果它有效,请接受它作为答案。 :) – molagbal

0

我认为你必须使用where_in:

$result_data = array(
    [profileid] => 4 
    [questionid] => 7 
    [clientid] => 15 
    [page_id] => 4 
); 


$updated_data = array(
     [optionid] => 31,32,33, 
     [option_score] => 1,2,3, 
     [answer_given] => 1 
    ); 

$this->db->where_in($result_data); 
$this->db->update('tbl_result_temp', $updated_data);