好的,我有一个名为用户的表格,该表格中包含:
----------------------------------
Grade 1
----------------------------------
Table 1 | Table 2
|
|
基本上,我有 6年级1年级学生和 6年级2年级学生。我想根据他们的成绩使用双列表显示它们:
$sql = "SELECT * FROM users WHERE grade = '$grade1' LIMIT 3";
$result = mysqli_query($connectdb,$sql);
while($row=mysqli_fetch_assoc($result)) {
$name = $row['name'];
echo "<tr>";
echo "<td>";
echo $name;
echo "</td>";
echo "</tr>";
}
这样做的目的是我想通过不在一列中显示所有等级1来节省空间,我希望每个显示表1 和表2 3个等级1,基于记录。
我尝试使用此代码:
----------------------------------
Grade 1
----------------------------------
Table 1 |Table 2
Ben | Ben
Cathy | Cathy
Tom | Tom
我把它放在表1 和表2 上。有效。但是两个表都显示相同的名称:
----------------------------------
Grade 1
----------------------------------
Table 1 |Table 2
Ben | Mark
Cathy | Lisa
Tom | Bernard
我怎样才能使用这样的方式:
{{1}}
原谅我缺乏知识,我实际上是WHILE命令的新手。
答案 0 :(得分:0)
问题是你只检索前3名学生数据并显示两次......
第一种方式有两种方式
$sql = "SELECT * FROM users WHERE grade = '$grade1'";
$result = mysqli_query($connectdb,$sql);
$i=0;
while($row=mysqli_fetch_assoc($result)) {
if($i==0 || $i==3){
echo "<table>"
}
$name = $row['name'];
echo "<tr>";
echo "<td>";
echo $name;
echo "</td>";
echo "</tr>";
if($i==0 || $i==3){
echo "</table>"
}
$i++;
}
第二种方式再加一个,这里你要检索剩下的3个学生数据,需要在不同的表中显示
$sql = "SELECT * FROM users WHERE grade = '$grade1' LIMIT 3,3";
$result = mysqli_query($connectdb,$sql);
while($row=mysqli_fetch_assoc($result)) {
$name = $row['name'];
echo "<tr>";
echo "<td>";
echo $name;
echo "</td>";
echo "</tr>";
}