台灣最大程式設計社群網站
線上人數
619
 
會員總數:245113
討論主題:189027
歡迎您免費加入會員
討論區列表 >> PHP >> 關於陣列更新資料的問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於陣列更新資料的問題
價值 : 45 QP  點閱數:114 回應數:1

樓主

Dv Lin
門外漢
0 3
47 2
發送站內信

各位先進大家晚安
我希望更新資料表中的一個欄位
在views傳送二個陣列值
<input name="odlistid[]" type="hidden" value="<?php echo $_data['odlistid']; ?>" />
<input name="odlist_qty[]" type="text" value="<?php echo $_data['odlist_qty']; ?>" size="3" maxlength="3" />
在models我是這樣寫的
function bayqtyupdate() {
$post = $this->input->post();
$odlistid = $post['odlistid'];
$odlist_qty = $post['odlist_qty'];
$save = Array(
'odlist_qty' => $post['odlist_qty'],
);
//print_r($odlistid);
//print_r($odlist_qty);
//exit();
$this->db->where('odlistid', $odlistid);
$this->db->update('orderlist', $save);
}
我將二個值print_r出來
print_r($odlistid);
print_r($odlist_qty);
是有這個陣列的值
Array ( [0] => 633 [1] => 632 ) Array ( [0] => 5 [1] => 8 )
但在更新的時候卻
Unknown column 'Array' in 'where clause'
UPDATE `orderlist` SET `odlist_qty` = Array WHERE `odlistid` = `Array`
不管是哪個值都完全抓不到
請問各位先進
我是哪邊寫錯了嗎?

搜尋相關Tags的文章: [ 陣列 ] , [ 更新 ] , [ update ] , [ ci ] ,
本篇文章發表於2019-08-31 19:30
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

彩虹
檢舉此回應
你已經知道 $$post['odlistid'] 跟 $post['odlist_qty'] 是陣列了 (你注意看你 print_r() 出來的東西,他是不是已經告訴你 Array()
但你卻沒有對陣列做處理,當然會報錯
(挺正常的)UPDATE `orderlist` SET `odlist_qty` = Array WHERE `odlistid` = `Array`
因為你的確是「塞陣列」進去,而不是把「陣列的“值”」指定過去

這樣你大概看得懂


給你一點提點,你可以用 foreach 來做(你思考一下)








本篇文章回覆於2019-09-02 09:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.