我有一個數組數組,我在視圖中循環顯示它們在一個表中,我有一個確認按鈕,我需要點擊才能將這些表數據存儲在D b。我的問題是如何將這個數組的數組從視圖傳遞給我的控制器,以便繼續存儲到數據庫?Codeigniter:從視圖到控制器傳遞陣列數組
我試過使用表單並將它作爲發佈數據使用json_encode()將數組轉換爲字符串,但沒有運氣。我得到一個錯誤
消息:json_decode()預計參數1是字符串數組給定
可我不知該數組變量傳遞給我的輸入字段上單擊功能?
謝謝。
我有一個數組數組,我在視圖中循環顯示它們在一個表中,我有一個確認按鈕,我需要點擊才能將這些表數據存儲在D b。我的問題是如何將這個數組的數組從視圖傳遞給我的控制器,以便繼續存儲到數據庫?Codeigniter:從視圖到控制器傳遞陣列數組
我試過使用表單並將它作爲發佈數據使用json_encode()將數組轉換爲字符串,但沒有運氣。我得到一個錯誤
消息:json_decode()預計參數1是字符串數組給定
可我不知該數組變量傳遞給我的輸入字段上單擊功能?
謝謝。
我找到了解決我的問題。這是對我有用的東西。 我是通過我的數組的數組作爲字符串值在一個隱藏的輸入字段使用
json_encode($array)
但問題是,我的鑰匙了雙引號,因此在
value="<?php echo json_encode($array);?>"
被打破...
的解決方案是逃脫字符,所以我有
value="<?php echo htmlspecialchars(json_encode($array));?>"
替換上面的行
和Controller我不得不JSON讓我陣列以下行
$dataJson = $this->input->post('array');
$dataArray = json_decode(htmlspecialchars_decode($dataJson), true);
感謝大家的答案!
您可以在URL字符串這樣傳遞數組:
?arr[]=val1&arr[]=val2 //pass as the url param
//in controller
var_dump($_GET["arr"]);
//result should be
array(2) { [0]=> string(4) "val1" [1]=> string(4) "val2" }
你能發表一些片段嗎? –