使用while循环,我可以获得表中的所有结果并将其回显到html表中。
但是,我想跳过第一行,并从第二行开始回显结果。 我怎么能这样做?
这是我的代码。
$sql2="select * from table where year = '2015' and month = '2' order by month desc";
$result2=mysqli_query($conn,$sql2);
echo '<table>';
while($row2=mysqli_fetch_assoc($result2))
{
echo '<tr>';
echo '<th>'.$row2['acc_sth_date'].'</th>';
echo '<th>'.$row2['acc_sth_med_ori'].'</th>';
echo '<th>'.$row2['acc_sth_med_new'].'</th>';
echo '<th>'.$row2['acc_sth_operator'].'</th>';
echo '</tr>';
}
echo '</table>';
请高手帮帮我。感谢
答案 0 :(得分:1)
你可以通过两种方式实现这一目标。
您可以在SQL查询中使用LIMIT
语句:
$sql2="select * from table where year = '2015' and month = '2' order by month desc LIMIT 1,100";
1 =从第2行开始
100 =最多返回100行
在while
循环中添加条件:
$firstRow = true; while ($row2 = mysqli_fetch_assoc($result2)) { if (true === $firstRow) { $firstRow = false; continue; } // ... Rest of your code ... }
答案 1 :(得分:0)
您需要添加一个经过测试并设置为true的变量,以便下次不允许跳过:
$FirstRun=true;
while($row2=mysqli_fetch_assoc($result2))
{
if ($FirstRun){
$FirstRun = false;
}else {
echo '<tr>';
echo '<th>'.$row2['acc_sth_date'].'</th>';
echo '<th>'.$row2['acc_sth_med_ori'].'</th>';
echo '<th>'.$row2['acc_sth_med_new'].'</th>';
echo '<th>'.$row2['acc_sth_operator'].'</th>';
echo '</tr>';
}
}
答案 2 :(得分:0)
使用以下代码
$sql2="select * from table where year = '2015' and month = '2' order by month desc";
$result2=mysqli_query($conn,$sql2);
$row2=mysqli_fetch_assoc($result2);
$count = count($row2);
$i = 1;
echo '<table>';
while(i>=$count)
{
echo '<tr>';
echo '<td>'.$row2[i]['acc_sth_date'].'</td>';
echo '<td>'.$row2[i]['acc_sth_med_ori'].'</td>';
echo '<td>'.$row2[i]['acc_sth_med_new'].'</td>';
echo '<td>'.$row2[i]['acc_sth_operator'].'</td>';
echo '</tr>';
$i++;
}
echo '</table>';
它将显示除第一行之外的所有行。