PHP根据类别从数据库返回用户列表
根据复选框中的输入,我尝试根据链接用户表和类别的表中的类别回送数据库中的用户。尽管我知道每个类别中有几个用户,但我对每个类别只得到一个结果 我已经花了好几次时间寻找正确的方法来实现这一点,根据很多教程和文章,我认为这种方法会奏效。但事实并非如此。 这是一段代码,它不符合我的要求:PHP根据类别从数据库返回用户列表,php,database,mysqli,while-loop,echo,Php,Database,Mysqli,While Loop,Echo,根据复选框中的输入,我尝试根据链接用户表和类别的表中的类别回送数据库中的用户。尽管我知道每个类别中有几个用户,但我对每个类别只得到一个结果 我已经花了好几次时间寻找正确的方法来实现这一点,根据很多教程和文章,我认为这种方法会奏效。但事实并非如此。 这是一段代码,它不符合我的要求: function printusers($idcheck, $cat){ $sqlString = "SELECT userid FROM user_category WHERE categoryid ='$
function printusers($idcheck, $cat){
$sqlString = "SELECT userid FROM user_category WHERE categoryid ='$idcheck'";
$result = mysqli_query($dbLink, $sqlString) or die("Could not search for user id.." . mysqli_error($dbLink));
$row = mysqli_fetch_assoc($result);
// Make the first user on the list visable
mysqli_data_seek($result, 0);
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['userid'];
$sqlString = "SELECT name FROM users WHERE id='$id'";
$result = mysqli_query($dbLink, $sqlString) or die("Could not search for user.." . mysqli_error($dbLink));
$row = mysqli_fetch_assoc($result);
$name = $row['name'];
// echo users
echo "<h2 class=\"browsecategory\">Category: $cat</h2>
<p class=\"user\">Name: $name</p>\n";
}
}
if(isset($_POST['admins'])){
printusers(1, "Administrator");
}
这种方法重复了几个空结果。HTML在那里,但数据库中没有任何信息。被回传的REULT数量甚至比数据库应该产生的结果数量还要多
这是HTML。基本复选框形式:
<form action="results.php" method="POST">
<input type="checkbox" name="admins" id="admins">
<input type="checkbox" name="users" id="users">
<input type="checkbox" name="maillist" id="maillist">
<input type="submit" value="Browse">
</form>
您是否允许人们根据选中的多个复选框从多个类别中进行选择?您需要为此发布HTML表单。如果您的复选框没有设置为数组,那么这可能是一个原因。另外,您的编辑似乎有一个可变的范围问题:您有If(isset($\u POST['admin'))
有单数形式的“admin”,但您有复数形式的name=“admins”
;打字错误错误报告将发出未定义索引管理员通知的信号。-这应该是if(isset($\u POST['admins'])
如果它解决了这个问题,请告诉我。如果没有,那么编辑你的问题以反映打字错误。是的,这是一种类型。。。在把它粘贴到我的问题上之后,我摸索了一下,又写了一行。我的问题与我无关。
<form action="results.php" method="POST">
<input type="checkbox" name="admins" id="admins">
<input type="checkbox" name="users" id="users">
<input type="checkbox" name="maillist" id="maillist">
<input type="submit" value="Browse">
</form>