[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 编程技术 > 源码天堂 > 正文
Perl源码:分页显示CGI程序范例
本文出自:http://gzdzw.51.net 作者: 思维 (2001-08-23 12:00:01)
sub search{
$l=0;
$show=15;#设定每页显示数据的行数。
open (output,"sj.txt");#打开数据文件sj.txt
@count=<output>;
close(output);
$w=@count;#得到sj.txt文件中的数据信息总数$w.
if ($page eq ""){ $min=1; $max=$show; $page=1; }#设定首页的初始值:$page为页数,$min为数据文件中的第一行数据信息,$max为该页最末一行显示的数据文件中的数据信息行。
if ($page ne ""){ $min=(($page-1)*$show)+1; $max=$page*$show; }#各分页信息显示行的控制参数,变量含义与上一代码行相同。
$tempp=1;#每页显示行数的初始值。
$j=1;#页数的初始值。
print '<table border="0" cellspacing="0" style="font-size: 9pt" align="center"><tr><td width="500" >';

while ($w>0) {
print "<a href=$cgiurl?page=$j align=center>第$j页</a>。";
$w=$w-$show; $j++;
}#这个循环是建立页数的超连接。

print"Content-type:text/html\n\n";#建立输出格式
print"</td></tr></table>";
print '<table border="1" cellspacing="0" style="font-size: 9pt" align="center"><tr><td width="80" height="18" align="center" bgcolor="#FFBBDD">模块型号</td><td width="70" height="18" bgcolor="#7DCFFF" align="center">模块增益(dB)</td><td width="70" height="18" bgcolor="#7DCFFF" align="center">工作频率(MHZ)</td><td width="70" height="18" bgcolor="#7DCFFF" align="center">CTB失真 (dB)</td><td width="70" height="18" bgcolor="#7DCFFF" align="center">交调失真 (dB)</td><td width="70" height="18" bgcolor="#7DCFFF" align="center">互调失真(dB)</td><td width="70" height="18" align="center" bgcolor="#7DCFFF" align="center">输出电平(dB)</td><td width="70" height="18" align="center" bgcolor="#7DCFFF" align="center">噪声系数(dB)</td><td width="70" height="18" align="center" bgcolor="#7DCFFF" align="center">工作电流(mA)</td></tr>';
#上面一段代码是生成要显示的各数据信息的名称行,熟悉HTML的朋友应一看就知道。

open (output,"sj.txt");#再打开数据文件sj.txt
while ($temp=<output>){
@line[$l]=$temp;
$l++;}#此循环是将sj.txt中的每一行数据赋给数组@line
close(output);

for ($l;$l>=0;$l--){#进入显示循环。
($webname,$url,$key,$gl,$fdxs,$tzpv,$lx,$lx1,$lx2)=split(/&/, @line[$l]);#以&为标记分割数组@line并将分割后的数据赋给等式左边的各变量。

#下面一段代码为数据输出显示段,它受$min和$max这两个变量控制。
if ($tempp>=$min && $tempp<=$max) {
print "<tr><td width='80' height='18' align=center >$webname</td><td width='70' height='18' align=center >$key</td><td width='70' height='18' align=center>$url</td><td width='70' height='18' align=center >$gl</td><td width='70' height='18' align=center>$fdxs</td><td width='70' height='18' align=center >$tzpv</td><td width='70' height='18' align=center>$lx</td><td width='70' height='18' align=center>$lx1</td><td width='70' height='18' align=center>$lx2</td></tr>";
}
$tempp++;}
}                


(http://www.fanqiang.com)
    进入【UNIX论坛

相关文章
Perl源码:一种图形显示式计数器CGI程序范例 (2001-08-23 15:00:00)
Perl源码:分页显示CGI程序范例 (2001-08-23 12:00:01)
Perl源码:在线人数统计CGI程序剖释 (2001-08-23 10:00:01)
Perl源码:日历CGI程序浅解 (2001-08-23 09:00:01)
 

★  樊强制作 欢迎分享  ★