我想在我的表单输入类型中传递我的php数组,因为hidden.i已尝试多次,但它在我的输入表单中给了我一个数组(key => value,key => value)。
这是我的php代码有一个数组。
$my_arr = array();
$my_arr['key']="value";
这是我的HTML代码
<form method="post" action="next.php">
<input type="hidden" name="my_form_data" value="<?php print_r($my_arr) ?>">
<button name="submit_btn">Submit</button>
</form>
任何人请帮我在我的输入隐藏元素中传递php数组以及如何在下一页中获取它。
答案 0 :(得分:3)
最简单的方法是通过json_encode
将json设为字符串,然后在json_decode
检索时解码,
<form method="post" action="next.php">
<input type="hidden" name="my_form_data" value="<?php echo json_encode($my_arr); ?>">
<button name="submit_btn">Submit</button>
</form>
答案 1 :(得分:2)
$hiddenvariable=array("apple","banana","cat");
foreach($hiddenvariable as $value)
{
echo '<input type="hidden" name="my_form_data[]" value="'. $value. '">';
}
首先创建一个数组,然后使用foreach提取每个元素并将这些值传递给隐藏值。
答案 2 :(得分:2)
如果我理解正确,你可以试试这个:
<form method="post" action="next.php">
<input type="hidden" name="my_form_data" value="<?php echo htmlspecialchars(serialize($my_arr)) ?>">
<button name="submit_btn">Submit</button>
</form>
然后在next.php
中反序列化以获取PHP数据结构:
<?php
$my_arr = unserialize($_POST["my_form_data"]);
答案 3 :(得分:0)
在名称
中使用my_form_data[]
<form method="post" action="next.php">
<input type="hidden" name="my_form_data" value="<?php echo htmlentities(serialize($my_arr));?>">
</form>