CodeIgniter 中 update_batch 处的多个 WHERE 条件问题

Multiple WHERE condition issue at update_batch in CodeIgniter

在 CodeIgniter 中使用多个 Where 条件时遇到问题 update_batch。

没有错误消息未显示。 以及数据库中的数据未更新。 但是在单击 提交按钮 后,我收到了 快速消息 ,因为数据已成功提交。但是数据库无法更新。 请建议我该怎么做!

控制器 ---------------------------------- --

public function masterPrice_update($m_fran_id = null) 
 {
  $sID   = $this->input->post('m_test_id');
  $sAmt  = $this->input->post('m_updated_test_price');
  $sFranId = $this->input->post('m_fran_id');

  for ($i= 0; $i < count($sID); $i++)
  {
   
   $edited_test[] = array(
    'm_test_id' => $sID[$i],
    'm_updated_test_price' => $sAmt[$i],
    'm_fran_id' => $sFranId[$i]
   );
  }

  if ($this->form_validation->run() === true) {
   $this->franchise_price_model->singlebatch_Test_updt($edited_test);

   $this->session->set_flashdata('message', display('save_successfully'));
   redirect('branch/franchise_price/masterPrice_update');
  }
 }

模态--------------------

public function singlebatch_Test_updt($edited_test =[], $sFranId ='')
{ 
 $this->db
 ->where('m_fran_id',$sFranId)
 ->update_batch($this->fran_test_pricemaster, $edited_test , 'm_test_id' );
}

您可以使用 $this->db->last_query() 来打印查询。我认为您在控制器的 where 条件下没有将 $sFranId 传递给模型时遇到问题。

Use this type of Query

$this->db->query("UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition AND condition2");