之前調用empty_table我有一個表(mytable的)有3個字段:笨insert_batch
ID (int), posistion(int), products_id(int)
我有一個形式,我們可以更改順序,並刪除該列表由/項。 用戶完成編輯列表後,他提交表單。
我想在插入新數據之前清空表格。
,所以我打電話$this->db->empty_table("myTable");
之後我插入新的數據是這樣的:
$this->db->insert_batch("jcarousel",$insert);
的問題是:不知何故empty_table()插入查詢之後被調用,因爲我的桌子總是空。要清楚:我的插入查詢工作正常,當我評論出//$this->db->empty_table("myTable");
我已經嘗試了幾件事情,所以我的代碼我有點搞砸了。現在它看起來像這樣:
public function change_carousel_order($value='')
{
$this->output->enable_profiler(TRUE);
$empty = $this->empty_table();
//$empty = TRUE;
$form = $this->input->post();
//print_r($form['order']);
$insert = array();
foreach ($form['order'] as $key => $value) {
//echo "value: ".$value;
$insert[$key]['product_id'] = $value;
$insert[$key]['posistion'] = $key;
}
echo $this->db->last_query();
if($empty==TRUE)
{
echo "jaaa";
echo $this->insert_change_carausel_order($insert);
}
else{
echo "neee!";
}
echo $this->db->last_query();
//redirect("welcome/jcarousel");
}
public function empty_table($value='')
{
return $this->db->empty_table("jcarousel");
}
public function insert_change_carausel_order($insert=array())
{
return $this->db->insert_batch("jcarousel",$insert);
}
任何誰看到我在做什麼錯? 爲什麼在調用empty_table()之後is'nt codeigniter插入任何數據? 任何幫助將非常充分的讚賞。
$ this-> output-> enable_profiler(TRUE); 告訴我們有2個查詢; 刪除查詢確實執行插入查詢
0.0003 DELETE FROM `jcarousel`
0.0002 INSERT INTO `jcarousel` (`posistion`, `product_id`) VALUES (0,'755'), (1,'835'), (2,'838')
和另一個結果同在安裝完成後:
0.0006 DELETE FROM `jcarousel`
0.0002 INSERT INTO `jcarousel` (`posistion`, `product_id`) VALUES (0,'755'), (1,'835'), (2,'838')
你會得到什麼,如果'的var_dump($空)'? – GBD
var_dump($ empty)返回:bool(true) –
你在'$ this-> insert_change_carausel_order($ insert)後面得到'echo $ this-> db-> last_query();' – GBD