如何从未知数量的复选框中获取信息

use*_*071 0 html php

在我的一个html页面上,我有一个循环,它创建了n个复选框(取决于数据库中有多少条目).

当用户按下提交按钮时,它会打开另一个html页面,如何设置我的第二页以接收所有打勾的项目.注意,复选框的名称也是未知的,到目前为止我在第一页上有这个:

 <form action='tests.php' method='get'>
                <p>
                <?php
                        while ($row = mysql_fetch_array($result)) {
                                print "<tr><td><input type='checkbox' name=".$row{'Info'}." value=".$row{'Info'}.">".$row{'Info'}."<br></td></tr>";
                        }
                ?>
                </p>
                <input type="submit" value="Submit">
        </form>
Run Code Online (Sandbox Code Playgroud)

当tests.php打开时,如何获取所有检查标记的值?

阅读其他帖子,我相信我必须使用数组来获取值,但是,我仍然看不到如何在这里实现数组.

Joh*_*nde 7

把它们放到一个数组中:

HTML:

<form action='tests.php' method='get'>
    <p>
    <?php
        while ($row = mysql_fetch_array($result)) {
            print "<tr><td><input type='checkbox' name='checkbox[".$row{'Info'}."]' value=".$row{'Info'}.">".$row{'Info'}."<br></td></tr>";
        }
    ?>
    </p>
    <input type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)

PHP:

$checkboxes = $_GET['checkbox']; // this is an array
foreach ($checkboxes  as $key => $value) {
    // $key is the value of $row{'Info'}
}
Run Code Online (Sandbox Code Playgroud)

应该注意的是,如果您的值中包含括号,除非您urlencode()首先使用它们,否则这将不起作用.

  • +1我的情绪egg-zack-kit-ah-lee ;-) molto bene (2认同)