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

5年以前  |  阅读数:476 次  |  编程语言:PHP 

今天在做项目时,遇到个问题就是把从数据库读出来的同一字段分行分列显示,就是每行显示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有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例