php - 获取第二行,直到mysql的最后一行

时间:2015-03-14 03:53:05

标签: php mysql

使用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>';

请高手帮帮我。感谢

3 个答案:

答案 0 :(得分:1)

你可以通过两种方式实现这一目标。

  1. 您可以在SQL查询中使用LIMIT语句:

    $sql2="select * from table where year = '2015' and month = '2' order by month desc LIMIT 1,100";

    1 =从第2行开始

    100 =最多返回100行

  2. while循环中添加条件:

  3. $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>';

它将显示除第一行之外的所有行。