我是該網站的新成員,儘管之前我已經使用過它了。我搜索了一下我的問題的答案,但我似乎無法找到答案。所以我想我會在這裏發佈。傳遞關聯數組作爲複選框形式的值(PHP)
無論如何,在這個問題上。在我的代碼中,我想要做的是創建一個關聯數組,然後以某種方式通過$ _POST傳遞該值。我最近的想法是創建關聯數組,然後將json_encode用於字符串,將該字符串作爲複選框的值傳遞,然後通過$ _POST獲取字符串值並使用json_decode獲取該關聯數組。
所以說我有一個名爲$ array的關聯數組。我將對其進行編碼,如下所示:
$string = json_encode($array)
然後我傳遞字符串作爲複選框的值:
<input type='checkbox' name='array[]' value='$string'>
然後,一旦表格被提交時,它獲取associatives陣列(S)和更新一些$ _SESSION值:
foreach ($_POST['array'] as $element)
{
$array = json_decode($element,true);
array_push($_SESSION['array'], $array);
$_SESSION['sum'] = $_SESSION['sum'] + $array["price"];
}
不過,我得到一個致命的錯誤,每次這個運行時,沿着「不支持的操作類型」指的是用$ _SESSION [「和」]行線的東西。每當我嘗試查看數組值(例如echo $ array [「price」]或echo $ array [「size」])時,我也會得到一個錯誤,這些錯誤是「數組到字符串轉換」。
任何人有任何想法?我很新的PHP(剛開始這個星期的學習它,如果你不能告訴)
看起來這應該工作。如果您使用查看源代碼,您是否看到'value'屬性中的JSON? – Barmar
嘗試在輸入循環之前回顯$ _POST ['array']。這可能是什麼問題。 – Kamehameha