這篇文章主要介紹了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有所幫助。