当前位置: 首页 > 图文教程 > 网络编程 > PHP > 几种显示数据的方法的比较

PHP
“懒人”的做法:用PHP简易实现中文分词
实例操作:PEAR的HTML_QuickForm7应用
PHP在电影图像中的妙用 合并汉英字幕
实例解说:用Perl来分析并生成中文Excel文件
实用举例:利用PHP代码实现网页自动判断转向
简单了解操控日期和时间的10个Perl CPAN模块
常用编程应用小技巧 PHP获得文件扩展名三法
windows环境下uploaded_file函数如何饶过缺陷
针对配置文件操作 PHP最常用的四个ini函数
用不同文件 构建可配置PHP应用程序的正确方式
精确到每一秒钟 如何实现在线人数的显示?
用PHP写mail函数 配置好后需要重启apache
简单示例:AJAX结合PHP代码实现登录
PHP中引用&的使用注意事项
关于AJAX的N篇贴子整理
社区新闻--PHP5内容管理系统
PHP 开发环境的选择、建立及使用(1)
PHP 开发环境的选择、建立及使用(2)
PHP 开发环境的选择、建立及使用(3)
PHP 开发环境的选择、建立及使用(4)

PHP 中的 几种显示数据的方法的比较


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 81 ::
收藏到网摘: n/a

用于显示数据库数据的时候,一般用循环体来做,常用的方法有while()和for()两种语句,下面就来讲一下他们在不同情况下各自的用法。
我们来分别介绍:
while()语句是可以显示全部数据,在不知道循环次数的情况下,尤其显得方便,而for()语句呢,可以输出显示从指定位置开始到指定位置结束的数据,在输出显示一定范围的数据时就用得上了。下面看一下编程实例:
我们先建一个数据库来备用:数据库名为:mydb表名为:tbl。
用下面的语句:createtabletal(idxint(3),urlchar(100),freetextchar(100))
可以用phpmyadmin工具来向数库表中插入若干个数据。
编程开始:

$id=mysql_connect("localhost")ordie("无法建立数据库链接");#链接数据库
$result=mysql_db_query("mydb","select*fromtbl",$id);#查询结果并存入变量中
$rows=mysql_num_rows($result);#得出数据表中的总行数,也就是数据的总个数
echo"<table>";#准备以表格的形式输出
echo"</table>";#表格结束

在上面两句中插入输出语句,对应于不同的情况,输出语句分为几种情况:
若输出全部数据,先用for()来做

for($i=0;$i<$rows;$i++){
$total=mysql_fetch_array($result);
echo"<tr><tdbgcolor=yellow><ahref="http://$total[url]"target=_blank>$total[freetext]</a>$total[idx]</tr></td>";
}
用while()来做
while($total=mysql_fetch_array($result))
{echo"<tr><tdbgcolor=yellow><ahref="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><tdbgcolor=yellow><ahref="http://$url"target=_blank>$freetext</a>$idx</tr></td>";

上述语句用for()分别得出数据表中的各字段的值存入变量中,用echo语句显示出来。

以上程序在apache+mysql+php4中运行通过