程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 幾種顯示數據的方法的比較

幾種顯示數據的方法的比較

編輯:PHP綜合
用於顯示數據庫數據的時候,一般用循環體來做,常用的方法有while()和for()兩種語句,下面就來講一下他們在不同情況下各自的用法。
  我們來分別介紹:
while()語句是可以顯示全部數據,在不知道循環次數的情況下,尤其顯得方便,而for()語句呢,可以輸出顯示從指定位置開始到指定位置結束的數據,在輸出顯示一定范圍的數據時就用得上了。下面看一下編程實例:
  我們先建一個數據庫來備用:數據庫名為:mydb 表名為:tbl。
用下面的語句:create table tal (idx int(3),url char (100),freetext char(100))
可以用phpmyadmin工具來向數庫表中插入若干個數據。
編程開始:

$id=mysql_connect("localhost") or die("無法建立數據庫鏈接");#鏈接數據庫
  $result=mysql_db_query("mydb","select * from tbl",$id);#查詢結果並存入變量中
  $rows=mysql_num_rows($result);#得出數據表中的總行數,也就是數據的總個數
echo"<table>";#准備以表格的形式輸出
echo "</table>";#表格結束

在上面兩句中插入輸出語句,對應於不同的情況,輸出語句分為幾種情況:
若輸出全部數據,先用for()來做

for($i=0;$i<$rows;$i++){
    $total=mysql_fetch_array($result);
      echo "<tr><td bgcolor=yellow><a href="http://$total[url]"target=_blank>$total[freetext]</a>$total[idx]</tr></td>";
         }
用while()來做
  while($total=mysql_fetch_array($result))
     { echo "<tr><td bgcolor=yellow><a href="http://$total[url]"target=_blank>$total[freetext]</a>$total[idx]</tr></td>";
   }

當我們想要分頁顯示的時候,也就是不能一下子把所有的數據一次性的顯示完,那麼可以用for()來完成這個任務。
我們假設每輸出10個數據,用$page來表示當前的頁數$pagesize=10來表示第頁的數據數量.語句如下所示:

for ($i=0;$i<$pagesize;$i++)
{
$start=($page-1)*$pagesize+$i;#計數起始的數據行數
if ($start<$rows)
$idx=mysql_result($result,$start,"idx");
$url=mysql_result($result,$start,"url");
$freetext=mysql_result($result,$start,"freetext");
echo "<tr><td bgcolor=yellow><a href="http://$url"target=_blank>$freetext</a>$idx</tr></td>";

上述語句用for()分別得出數據表中的各字段的值存入變量中,用echo語句顯示出來。

以上程序在apache+mysql+php4中運行通過

【本文版權歸作者與奧索網共同擁有,如需轉載,請注明作者及出處】    
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved