从数据库里取出数据放到表格里php有本身的方法,如odbc_result_all(),该函数用来将取得的资料转成HTML 的表格 (table) 格式,但必须是SQL语句里的选出来的字段,可能显示的数据并不是你全部选的字段。另一些可能要做选择,或者判断的。所以我写了这段代码来生成一个表格。想要显示的字段完全由一个数组控制。而且可以根据需要改变数组里的某个字段的值。代码如下:
/* showtable.php
*
* Created by Xu Jie
* Date: 03/01/2001
*/
function showHeader($arr_header)
{
$col = sizeof($arr_header);
echo "
";
do
{
echo "
".pos($arr_header)." |
";
}
while (next($arr_header));
echo "
";
}
function showList($head,$arr_data)
{
$i=0;
do
{
$header[$i++] = key($head);
}
while (next($head));
for ($i=0;$i
{
if ($i%2==0)
echo "
";
else
echo "
";
for ($j=0;$j{
if ($arr_data[$i]->$header[$j]!="")
echo " ".$arr_data[$i]->$header[$j]."
";
else
echo " ";
}
echo "
";
}
}
function showTable($arr_header,$arr_list,$face="BORDER=1")
{
echo "
";
showHeader($arr_header);
showList($arr_header,$arr_list);
echo "
";
}
?>
其中用户需要调用的是showTable()函数。
参数$arr_header为表格头部的标题行。比如一个用户列表(UserName,Password,EmailAdd,Homepage),存
放在sql Server上,从数据库里用mssql_fetch_object()取出字段存放到一个数组$arr_list里后,如果只
想显示UserName,EmailAdd,HomePage三个字段,而不显示Password字段。
$arr_header就可以这样写:
$arr_header = array("UserName"=>"用户名","EmailAdd"=>"电子邮件","Homepage"=>"个人主页");
然后调用showTable($arr_header,$arr_list;"Border=2");
就可以把列表显示到网页上了。为以下显示:
用户名 电子邮件 个人主页
...... ........ ........
...... ........ ........
...... ........ ........
如果想在每个电子邮件上都加链接 就可以用一个循环在给EmailAdd一列的每一个都加上链接了。
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn