while循环php中的复选框
我在while循环中有一个复选框,如下所示: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
<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);
}
}
?>