资源描述:
《论坛源码分析费下载》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、论坛源码分析一显示篇在下小试牛刀,用perl编写了一个论坛程序,希望和大家分享.好了,不阻碍大家的时间了,现在就让我们來看看源代码吧本程序不用数据库,而是用txt文件来储存论坛信息的.存储方式为:1.存储在COUNTER.TXT里面的内容subjectII3坚决反对51的暴行IIadamII3
2、
3、2001年2月10日,星期六,00:57:38II我说,ADAM你就非要开设这个题目不可吗?怎么每次都是这个IIGBOYII5II2001年2月10日,星期六,15:51:35II哈哈哈,改名改名,好!!!!HallyII2H2001年2月10日,星期六,20:49:34II(第一行是记录论
4、坛数,subjectII3)(第二行开始是记录论坛的主题等信息,分别是:主题
5、
6、创始人
7、
8、冋复
9、
10、吋间II)2.存储在datal(ID号).txtbillow
11、
12、
13、
14、2001年2月16日,星期五,12:28:52II哈哈!!!!!!!!!!!!
无聊!!!!!!!!!!!!!!!zsz
15、
16、
17、
18、2001年2月16日,星期五,12:34:09
19、
20、哈哈!!!!!!
怎么样?够玩吧!!!!
21、
22、(分别是:回复人IIema订II时间II内容II)下面的bbs_show.pl是实现部分sbbs_show.pl#!/usr/bin/perl#大家都应该知道这是什么吧:P
23、#################下面是函数部分#####################用get的方式获取输入信息•也就是说分析url中所带的参数subgetinput_get{$input=$ENV{,QUERY_STRING,};@string=split(/&/,$input);foreach(@string){$_=s/+//g;($id,$value)=split(/=/,$_);$valucs/%([a-fA-FO-9][a-fA-FO-9])/pack(Z,CZ,,hcx($l))/eg;$id二、s/%([a-fA-FO-9][a-fA-FO-9])/packhe
24、x($1))/eg;$GETTNPUT{$id}二$value;}return(%GETINPUT);################显示论坛主版而信息###############subbbs_show{tt############打印各式,用HTML各式print"Content-Type:text/html,z;print,,<htmlXhead><title>牛刀论坛</title>z,.〃</head>〃."〈BODYbgCo1or=#ffffffleftMargin=OtopMargin=5>z,.〃<divalign二center〉〃・"〈center〉".
25、"〈tableborder=0width二750cellpadding=0cellspacing=0height二68>〃.width二191height二68>〈imgborder二0src=nocgi/top-l.gifwidth二204height二71>〈/td>〃・〃<tdwidth=555height=68Ximgborder=0src=nocgi/top-2,gifwidth=430height二71>〈/td>〃.z,</tr>z/</table>,z・,z</center>〃・〃〈/div>〃・〃〈HRSIZE=1width二730>〃.〃〈br>〃・〃<TABL
26、Ealign二centerborder=0cellPadding=2cellSpacing=lwidth二730><TB0DY>〃.,Z<TRXTDalign=middlevAlign=topwidth=200XAhref二new.pl>〃・,Z<TMGborder'二0src=nocgi/post.gif></A>,/;###########计算论坛#############open(COUNTER,"〈counter,txt")
27、
28、die"Can'tOpencounter,txt:$!〃;##打开一个叫counter,txt的文件$temp=<COUNTER>;($subje
29、ct,$number)=split(/
30、
31、/,$temp);##将文件的第一行作分析,得出主题数$number############分页分析以10主题为一页###############if($number%10!=0){###如果Snumbcr可以被10整除,共分〃$numbcr710+l〃页$page_s=int($number/10)+1;}else{$page_s=($number/10);###如果$number不可以被10整除,共分z,$nu