来自html表单的$ _POST数组

Jam*_*ord 20 php

我试图从多个复选框(id [])发送数据并在php中创建一个数组"info",以允许我为每个值运行一个脚本(但是每次都可以更改值的数量)但是我首先尝试显示每个数组值的内容.我不太确定如何将我的数组填充行保存到数组的所有内容.

HTML

echo("<input name='id[]' type='checkbox' value='".$shopnumb."'>");
Run Code Online (Sandbox Code Playgroud)

我目前有希望的处理代码是 -

$info=$_POST['id[]'];
Echo(array_values($info));
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能使从表单复选框发送的内容填充数组信息

任何帮助是极大的赞赏

编辑澄清.

Ros*_* II 34

更改

$info=$_POST['id[]'];
Run Code Online (Sandbox Code Playgroud)

$info=$_POST['id'];
Run Code Online (Sandbox Code Playgroud)

通过添加[]到表单字段名称的末尾,PHP将自动将这些变量转换为数组.


Fan*_*nda 10

你应该得到像$ _POST ['id']中的数组.所以你应该能够做到这一点:

foreach ($_POST['id'] as $key => $value) {
    echo $value . "<br />";
}
Run Code Online (Sandbox Code Playgroud)

输入名称应相同:

<input name='id[]' type='checkbox' value='1'>
<input name='id[]' type='checkbox' value='2'>
...
Run Code Online (Sandbox Code Playgroud)

  • 这是唯一真正有意义的答案 (3认同)

Joh*_*ano 7

<input name='id[]' type='checkbox' value='".$shopnumb."\'>
<input name='id[]' type='checkbox' value='".$shopnumb."\'>
<input name='id[]' type='checkbox' value='".$shopnumb."\'>


$id = implode(',',$_POST['id']);
echo $id
Run Code Online (Sandbox Code Playgroud)

你不能回显数组,因为它只会打印出数组.如果你想打印出阵列使用print_r.

print_r($_POST['id']);
Run Code Online (Sandbox Code Playgroud)