有两张数据表:
数据表用户名中,用于记录登录信息,如:username\password等字段
数据表成绩单中,用于记录登录信息,如:username\realname\event\scores\groups等字段
用户操作登录后,将调用username字段中正在登陆的用户的信息来查询他组里的所有人的成绩信息
并且使用了复选框进行勾选操作,复选框的内容为“Event1”、"Event2"、"Event3",可用于查询不同Event中的所有人的Scores信息
现在出现的问题是:
我用do while进行重复区域操作的时候,发现,始终会在字段标题和信息行之间有一个空数据行,是空数据行,不是单纯的空行。
我自查了数据库,个别数据是null形式存在的,是否有影响?
代码如下,求解
// 假设这是从数据库或其他数据源获取的选项数组
$options = array(
'Event1,
'Event2',
'Event3'
);
?>
<div align="center" class="container">
<form method="POST" action="">
<?php
echo '请选择想要查询的项目:';
// 循环遍历选项数组并创建复选框
foreach ($options as $option) {
// 为每个复选框分配一个唯一的名称和值
$name = 'checkbox_' . $option;
$value = $option;
// 输出复选框
echo '<input type="checkbox" name="' . $name . '" value="' . $value . '"> ' . $option . ' / ';
}
?>
<input type="submit" value="查询" ></form></div>
<div> 正在查询>>></div>
<div class="container">
<table class="table table-hover">
</div>
<tr>
<td>Realname</td>
<td>Event</td>
<td>Scores</td>
</tr>
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// 检查每个复选框是否被选中
foreach ($_POST as $name => $xzxm) {
if (substr($name, 0, 9) === 'checkbox_') {
// 复选框被选中
echo $xzxm.' / ';
}
//从考点记录集中调取考点编号
$username = $row_list_user['username'];
if($username!=' '){
$maxRowCount = mysql_num_rows($scores);
// 根据考点编号,从证书数据库中调取出对应值,并只显示最高等级
$scores = "select * from scores where username = '$username' and event ='$xzxm' group by username order by username asc" ;
$scores=mysql_query($scores) or die("查询失败");
}
do { ?>
<tr>
<td><?php echo $row['realname']; ?></td>
<td><?php echo $row['event']; ?></td>
<td><?php echo $row['scores']; ?></td>
<td><?php echo $row['group']; ?></td>
</tr>
<?php }
//循环查询多条重复内容
while ($row = mysql_fetch_assoc($scores)); }
}?>
</table>