Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
while循环php中的复选框_Php_Html - Fatal编程技术网

while循环php中的复选框

while循环php中的复选框,php,html,Php,Html,我在while循环中有一个复选框,如下所示: <form method="POST"> <?php $sql= mysql_query("SELECT * FROM names WHERE `id` ='$id' "); while ($get = mysql_fetch_array($sql)){ ?> <input type="checkbox" name="id_names" value="<? echo $get ['id

我在while循环中有一个复选框,如下所示:

 <form method="POST">
    <?php $sql= mysql_query("SELECT * FROM names WHERE `id` ='$id' ");

     while ($get = mysql_fetch_array($sql)){ ?>
    <input type="checkbox" name="id_names" value="<? echo $get ['id'];?>"><?php echo $get ['name']; ?>
    <?php } ?>
   <input id="submitbtn"  type="submit" value="Submit" /><br><br>
</form>
我试图寻找答案,但我无法理解。有一种简单的方法可以做到这一点吗?

表单名称
name=“id\u names”
需要是一个数组,以允许参数携带多个值:
name=“id\u names[]”


$\u POST['id\u names']
现在将是所有已发布值的数组。

此处您的输入字段是多个的,因此您必须使用name属性作为数组:

仅供参考:您使用的mysql已被弃用。您应该使用mysqli/pdo




表单操作:test.php(如果您的查询没有问题)。



你可以在这里检查:立即检查@ashnelchand。因此,“$id”存储为数字,所以当我执行
WHERE id=$id
时,它会说WHERE id='1',但它应该像
WHERE id=jack
是的id是一个整数,不需要使用引号。我们如何区分该数组呢['id\u name']='add\u 2,add\u 3,add\u 4,add\u 5',那么我如何才能得到不同的结果呢。
<?php
      if(isset($_POST['id_names']))
        {
         $id_names= $_POST['id_names'];
         $email = mysql_query("SELECT `email` FROM users WHERE `id` = '$id_names'  ");
  while ($getemail = mysql_fetch_array($email))
      {
        echo $getemail['email'];
      }
         }
    ?>
<form method="POST" action="test.php">
    <?php $sql= mysql_query("SELECT * FROM names WHERE `id` =$id ");

    while ($get = mysql_fetch_array($sql)){ ?>
        <input type="checkbox" name="id_names[]" value="<?php echo $get['id'];?>"><?php echo $get['name']; ?>
        <input type="checkbox" name="id_names[]" value="<?php echo $get['id'];?>"><?php echo $get['name']; ?>
    <?php } ?>
    <input id="submitbtn"  type="submit" value="Submit" /><br><br>
</form>
<?php
    if(isset($_POST['id_names'])){
        foreach ($_POST['id_names'] as $id) {
            $email = mysql_query("SELECT `email` FROM users WHERE `id` = $id");
            $getemail = mysql_fetch_array($email); //Here always data will single so no need while loop
            print_r($getemail); 
        }
    }
?>