获取的数据库行上的PHP序列号

时间:2013-07-08 12:41:36

标签: php serialization auto-increment post-increment

我正在开发一个项目,该项目从数据库中获取某些记录并显示在表格中。获取的记录(行)数取决于我给定的条件。所有这些对我来说都很好。

我的挑战是我想显示一个序列号列(SN),其结果集编号为1,2,3,4等,具体取决于找到的行数。虽然我的数据库的id列在INSERT命令期间是auto_incremented,但是,如果我获取此id列值(对我来说工作正常),它会给我那些存储的数字值但不是1,2,3等。以下代码是我正在使用的对我来说很好的代码,只是用列,1,2,3,4等填充SN列。

$output ="SELECT * FROM guest_tb where((arrival_day='$arrival_day') and (arrival_month='$arrival_month') and (arrival_year='$arrival_year')) order by names asc";
$query=mysql_query($output);
//$cnt=mysql_num_rows($query);

while($result=mysql_fetch_array($query)) {?> <tr>  
<td><div align="center" class="style61">  
<div align="left"><?php // Here comes the code for serial number </div></div></td>
<td><div align="center" class="style61">  
<div align="left"><?php echo $result['names']; if(($result['room_number'])!=="") {echo " (Room ".$result['room_number'].")";} ?></div>  
  </div></td>  
  <td><div align="center" class="style61"><?php echo   number_format($result['room_rate'],0,',',',')." NGN" //echo ", ". $result['Website'];?></div>  
      <div align="center"></div></td>  
  <td><div align="right" class="style61"><?php echo   number_format($result['amount_paid'],0,',',',')." NGN";?></div></td>  
  <td align="center"><div align="center" class="style61"><?php echo $result['remark'];?></div>     </td>
</tr>
<?php }

?>

2 个答案:

答案 0 :(得分:0)

从我能理解的......

在while循环中维护一个计数器。对于下一页(如果您正在进行分页),请将此计数器的值设置为

counter =(当前页面*每页的项目数量)+ 1

..希望这会有所帮助..

答案 1 :(得分:0)

是的,谢谢朋友们。我以这种方式找到了对我的挑战的答案:

首先,我定义了一个计数器,用于计算获取的行数:'$ cnt'

$ output =“SELECT * FROM guest_tb where((arrival_day ='$ arrival_day')和(arrival_month ='$ arrival_month')和(arrival_year ='$ arrival_year'))按名称命令asc”; $查询=请求mysql_query($输出); $ CNT = mysql_num_rows($查询);

然后,初始化变量$ i = 1,之后在while循环中,我为while循环提供了2个条件:while($ result = mysql_fetch_array($ query)和$ i&lt; = $ cnt)

因此,while循环的第一个条件我后来用它从数据库中获取记录并显示在表中。

最后,在显示的表格中,我创建了'SN'列并使用此代码创建序列号(我正在寻找的)...并且序列号取决于所获取的记录数,即如果从数据库中提取了3条记录,序列号将从1开始并在3处停止 - $ cnt的值。这是简单的代码:

回声$ i。“
”; $ I ++;

就是这样。希望人们能发现这很有用。