欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php中单个数据库字段多列显示(单字段分页、横向输出)

程序员文章站 2022-05-15 11:07:30
今天在做项目时,遇到个问题就是把从数据库读出来的同一字段分行分列显示,就是每行显示12列,根据总记录数控制循环行数。如果是多字段很好实现,一个循环搞定,如果是一个字段循环那...

今天在做项目时,遇到个问题就是把从数据库读出来的同一字段分行分列显示,就是每行显示12列,根据总记录数控制循环行数。如果是多字段很好实现,一个循环搞定,如果是一个字段循环那么就比较麻烦了,需要同时用到多个循环还有递增变量,网上也有很多phper遇到相似的问题,今天小编把自己的解决方案分享大家。

对于同一字段循环多行和控制列显示个数,实现原理就是先用limit限制读出第一次循环,然后拿第一次循环读出的记录数加上要每行显示的列数。下面直接附上代码:

第一次循环代码:

<tr>
<?php
$rer=mysql_query(“select ei_employeeid,ei_employeename from employeeinfo order by ei_employeeid asc limit 0,10″);
while($inf=mysql_fetch_array($rer)){
?> 
<td>
<input type=”checkbox” name=”menuemployname” id=”menuemployname” value=”<?php echo $inf['ei_employeename']?>”/><?php echo $inf['ei_employeename']?>
</td>
<?php }?>
</tr>
之后循环代码:
<?php
$rer=mysql_query(“select ei_employeeid,ei_employeename from employeeinfo order by ei_employeeid asc”);
$num=mysql_num_rows($rer);
$i=0;$j=10;
$count=ceil($num/$j);
for($k=0;$k<$count;$k++){
$i=$i+$j;
?> 
<tr>
<?php
$rer=mysql_query(“select ei_employeeid,ei_employeename from employeeinfo order by ei_employeeid asc limit $i,$j”);
while($inf=mysql_fetch_array($rer)){
?> 
<td>
<input type=”checkbox” name=”menuemployname” id=”menuemployname” value=”<?php echo $inf['ei_employeename']?>”/><?php echo $inf['ei_employeename']?>
</td>
<?php }?>
</tr>
<?php }?>

当然还有更直接的方法,就是多次循环第一次循环,只需要改动limit的第一个参数即可。希望对于初学者phper有所帮助。