我有一个数组的数组,我在我的视图中循环显示它们在一个表中,我有一个确认按钮,我需要点击以将这些表数据存储在数据库中 . 我的问题是如何将这个数组数组从视图传递给我的控制器,以便继续存储到db?
我已经尝试使用表单并使用json_encode()将其作为发布数据传递以将数组转换为字符串,但没有运气 . 我收到一个错误
消息:json_decode()期望参数1为字符串,给定数组
我能以某种方式将数组变量传递给输入字段的on-click函数吗?
谢谢 .
您可以在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" }
我找到了解决问题的方法 . 这对我有用 . 我正在使用隐藏输入字段将数组数组作为字符串值传递
json_encode($array)
但问题是我的钥匙是双引号,结果是
value="<?php echo json_encode($array);?>"
正在崩溃......
解决方案是逃避角色,所以我不得不用上面的代替
value="<?php echo htmlspecialchars(json_encode($array));?>"
在控制器中,我必须使用以下行从json获取我的数组
$dataJson = $this->input->post('array'); $dataArray = json_decode(htmlspecialchars_decode($dataJson), true);
谢谢大家的答案!
2 回答
您可以在url字符串中传递数组,如下所示:
我找到了解决问题的方法 . 这对我有用 . 我正在使用隐藏输入字段将数组数组作为字符串值传递
但问题是我的钥匙是双引号,结果是
正在崩溃......
解决方案是逃避角色,所以我不得不用上面的代替
在控制器中,我必须使用以下行从json获取我的数组
谢谢大家的答案!