在php編程中,顯示資料庫資料一般用迴圈體來做,常用的方法有while()和for()兩種語句,下面說說他們在不同情況下各自的用法。
while使用:
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"
";#表格結束
for使用:
在上面兩句中插入輸出語句,對應於不同的情況,輸出語句分為幾種情況:
若輸出全部資料,先用for()來做
for($i=0;$i<$rows;$i++){
$total=mysql_fetch_array($result);
echo "$total[freetext]$total[idx]";
}
用while()來做
while($total=mysql_fetch_array($result))
{ echo "$total[freetext]$total[idx]";
}
當我們想要分頁顯示的時候,也就是不能一下子把所有的資料一次性的顯示完,那麼可以用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 "$freetext$idx";
上述語句用for()分別得出資料表中的各欄位的值存入變數中,用echo語句顯示出來。
以上程式在apache+mysql+php4中運行通過
以上就介紹了php中幾種顯示資料的方法比較,包括了php顯示資料方面的內容,希望對PHP教程有興趣的朋友有所協助。