  
- UID
- 1
- 威望
- 1240 点
- 金钱
- 24019 金币
- 点卡
- 317 点
|
1#
发表于 2004-11-27 22:35
| 只看该作者
对程序版本: LeoBBS X Build041118一点建议(更新时间 2004/11/26)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1,文件[color=#DC143C]fav.cgi
美化建议和一个小纠正
找到- $topicicon = "<img src=$imagesurl/images/topicnonew.gif width=14 border=0>";
复制代码 更改为- $topicicon = "<img src=$imagesurl/images/$skin/topicnonew.gif width=14 border=0>";
复制代码 找到- elsif ($threadstate eq "pollclosed") { $topicicon = "<img src=$imagesurl/$skin/images/closedb1.gif width=13 border=0>"; }
复制代码 更改为- elsif ($threadstate eq "pollclosed") { $topicicon = "<img src=$imagesurl/images/$skin/closedb1.gif width=13 border=0>"; }
复制代码 感觉发布有点匆忙~ 
______________________________________________________________________________
2,文件[color=#DC143C]forumstyles.cgi
美化建议
找到五处更正为可能是LB5000时代替换遗留下来的问题.
______________________________________________________________________________
3,文件[color=#DC143C]messanger.cgi
①合理建议
找到- elsif ($action eq "read")
复制代码 在这个action里查找如下代码(这段代码共有两处,在上面的outread的action里也有,但用在那里是正确的,无须修改):- if ($inmsg < @[b][color=blue]out[/color][/b]boxmessages - 1)
- {
- my $[b][color=blue]out[/color][/b]boxdown = $inmsg + 1;
- (undef, $nreadstate, undef, $nmessagetitle, undef) = split(/\t/, $[b][color=blue]out[/color][/b]boxmessages[$[b][color=blue]out[/color][/b]boxdown]);
- $[b][color=blue]out[/color][/b]boxmsgdown = qq~<a href=$thisprog?action=[b][color=blue]out[/color][/b]read&msg=$[b][color=blue]out[/color][/b]boxdown title="下一条消息: ($readstatus{$nreadstate})\n消息标题: $nmessagetitle">下一条</a>~;
- }
- if ($inmsg > 0)
- {
- my $[b][color=blue]out[/color][/b]boxup = $inmsg - 1;
- (undef, $preadstate, undef, $pmessagetitle, undef) = split(/\t/, $[b][color=blue]out[/color][/b]boxmessages[$[b][color=blue]out[/color][/b]boxup]);
- $[b][color=blue]out[/color][/b]boxmsgup = qq~<a href=$thisprog?action=[b][color=blue]out[/color][/b]read&msg=$[b][color=blue]out[/color][/b]boxup title="上一条消息: ($readstatus{$preadstate})\n消息标题: $pmessagetitle">上一条</a>~;
- }
- $[b][color=blue]out[/color][/b]boxsplitline = " | " if ($[b][color=blue]out[/color][/b]boxmsgdown ne "" && $[b][color=blue]out[/color][/b]boxmsgup ne "");
- if ($[b][color=blue]out[/color][/b]boxmsgdown ne "" || $[b][color=blue]out[/color][/b]boxmsgup ne "")
- {
- $[b][color=blue]out[/color][/b]boxtempone = "[ ";
- $[b][color=blue]out[/color][/b]boxtemptwo = " ]";
复制代码 修改为:- if ($inmsg < @[b][color=blue]in[/color][/b]boxmessages - 1)
- {
- my $[b][color=blue]in[/color][/b]boxdown = $inmsg + 1;
- (undef, $nreadstate, undef, $nmessagetitle, undef) = split(/\t/, $[b][color=blue]in[/color][/b]boxmessages[$[b][color=blue]in[/color][/b]boxdown]);
- $[b][color=blue]in[/color][/b]boxmsgdown = qq~<a href=$thisprog?action=read&msg=$[b][color=blue]in[/color][/b]boxdown title="下一条消息: ($readstatus{$nreadstate})\n消息标题: $nmessagetitle">下一条</a>~;
- }
- if ($inmsg > 0)
- {
- my $[b][color=blue]in[/color][/b]boxup = $inmsg - 1;
- (undef, $preadstate, undef, $pmessagetitle, undef) = split(/\t/, $[b][color=blue]in[/color][/b]boxmessages[$[b][color=blue]in[/color][/b]boxup]);
- $[b][color=blue]in[/color][/b]boxmsgup = qq~<a href=$thisprog?action=read&msg=$[b][color=blue]in[/color][/b]boxup title="上一条消息: ($readstatus{$preadstate})\n消息标题: $pmessagetitle">上一条</a>~;
- }
- $[b][color=blue]in[/color][/b]boxsplitline = " | " if ($[b][color=blue]in[/color][/b]boxmsgdown ne "" && $[b][color=blue]in[/color][/b]boxmsgup ne "");
- if ($[b][color=blue]in[/color][/b]boxmsgdown ne "" || $[b][color=blue]in[/color][/b]boxmsgup ne "")
- {
- $[b][color=blue]in[/color][/b]boxtempone = "[ ";
- $[b][color=blue]in[/color][/b]boxtemptwo = " ]";
复制代码 可能是LB5000时代替换遗留下来的问题.
②合理建议
找到二处- $messagetitle = &postwordfilter($messagetitle) if ($dofilter eq "no" || $dofilter eq "all");
复制代码 更正为- $messagetitle = &dofilter($messagetitle);
复制代码 可能是LB5000时代替换遗留下来的问题.
______________________________________________________________________________
4,严重漏洞!
原因是由于对用户名换码正则过滤不言所造成~!
----------------------------------------
查找 ';~ /$tempinmembername/i'; 于 ';bbs.lib.pl'; :
bbs.lib.pl/255: $inmembmod = $forummodnamestemp =~ /$tempinmembername/i || (($membercode eq "cmo" || $membercode eq "mo" || $membercode eq "amo") && ($forummodnamestemp =~ /,全体版主,/ || $forummodnamestemp =~ /,全体斑竹,/)) ? "yes" : "no";
找到 ';~ /$tempinmembername/i'; 1 次。
----------------------------------------
查找 ';~ /$tempinmembername/i'; 于 ';doipbanned.pl'; :
doipbanned.pl/22: if ($term_idbannedmembers =~ /$tempinmembername/i) { &error(" ID 被禁止&由于你没遵守本站规定!你的 ID ($inmembername) 被禁止!如有疑问,请联系管理员。"); }
找到 ';~ /$tempinmembername/i'; 1 次。
以上两处改为- ~ /\Q$tempinmembername\E/i
复制代码 ----------------------------------------
查找 ';~ /\,$inmembername\,/i'; 于 ';bbs.lib.pl'; :
bbs.lib.pl/267: if ($forummodnamestemp =~ /\,$inmembername\,/i || (($membercode eq "cmo" || $membercode eq "mo" || $membercode eq "amo") && ($forummodnamestemp =~ /,全体版主,/ || $forummodnamestemp =~ /,全体斑竹,/))) { $inmembmod = "yes"; } else { $inmembmod = "no"; }
找到 ';~ /\,$inmembername\,/i'; 1 次。
----------------------------------------
查找 ';~ /\,$inmembername\,/i'; 于 ';domoderator.pl'; :
domoderator.pl/79: $inmembmod = "yes" if ($forummodnamestemp =~ /\,$inmembername\,/i || (($membercode eq "cmo" || $membercode eq "mo" || $membercode eq "amo") && ($forummodnamestemp =~ /,全体版主,/ || $forummodnamestemp =~ /,全体斑竹,/)));
找到 ';~ /\,$inmembername\,/i'; 1 次。
----------------------------------------
查找 ';~ /\,$inmembername\,/i'; 于 ';forums.cgi'; :
forums.cgi/493: $catlockbuttom = $membercode eq "ad" || $membercode eq "smo" || ",$catemods," =~ /\,$inmembername\,/i ? "<a href=postings.cgi?action=catlocktop&forum=$inforum&topic=$topicid><font color=$titlecolor>区固</font></a>|" : "";
forums.cgi/654: if ($membercode eq "ad" || $membercode eq "smo" || ",$catemods," =~ /\,$inmembername\,/i) {
找到 ';~ /\,$inmembername\,/i'; 2 次。
----------------------------------------
查找 ';~ /\,$inmembername\,/i'; 于 ';postings.cgi'; :
postings.cgi/857: if (($membercode eq "ad" || $membercode eq "smo" || ",$catemods," =~ /\,$inmembername\,/i) && ($inpassword eq $password)) { $cleartoedit = "yes"; }
postings.cgi/942: if (($membercode eq "ad" || $membercode eq "smo" || ",$catemods," =~ /\,$inmembername\,/i) && ($inpassword eq $password)) { $cleartoedit = "yes"; }
找到 ';~ /\,$inmembername\,/i'; 2 次。
以上六处改为- ~ /\Q\,$inmembername\,\E/i
复制代码 ----------------------------------------
查找 ';=~ /,$membername,/i'; 于 ';view.cgi'; :
view.cgi/206: $inmembmod = $forummodnamestemp =~ /,$membername,/i ? "yes" : "no";
view.cgi/687: $inmembmod = $forummodnamestemp =~ /,$membername,/i ? "yes" : "no";
找到 ';=~ /,$membername,/i'; 2 次。
以上二处改为- ~ /\Q,$membername,\E/i
复制代码 ----------------------------------------
查找 ';~ /\,$membername{$membername}\,/i'; 于 ';topic.cgi'; :
topic.cgi/610: if ($forummodnamestemp =~ /\,$membername{$membername}\,/i) { $inmembmod = "yes"; } else { $inmembmod = "no"; }
找到 ';~ /\,$membername{$membername}\,/i'; 1 次。
以上一处改为- ~ /\Q\,$membername{$membername}\,\E/i
复制代码 ----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';attachment.cgi'; :
attachment.cgi/83: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad'; && $pvtdown ne "no");
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';ebank.cgi'; :
ebank.cgi/346: $output .= qq~<tr><td colspan=2 align=center><a href=setbank.cgi><font color=blue>进入银行管理中心</font></a></td></tr>~ if (($membercode eq "ad" && $bankadminallow ne "manager") || ($membercode eq "smo" && $bankadminallow eq "all") || ",$bankmanager," =~ /,$inmembername,/i);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';editpoll.cgi'; :
editpoll.cgi/102: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';editpost.cgi'; :
editpost.cgi/144: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';forumlogs.cgi'; :
forumlogs.cgi/120: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';forums.cgi'; :
forums.cgi/127: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';ftp.cgi'; :
ftp.cgi/214: $output .= "\n<table width=$tablewidth align=center><tr><td> <a href=$thisprog?action=add><font color=$fonthighlight><b>出售新的 FTP 服务</b></font></a></td></tr></table>" if ($membercode eq "ad" || ",$saleusers," =~ /,$inmembername,/i);
ftp.cgi/508: &myerror("权限错误&你没有权利出售 FTP 服务!") unless ($membercode eq "ad" || ",$saleusers," =~ /,$inmembername,/i);
ftp.cgi/549: &myerror("权限错误&你没有权利出售 FTP 服务!") unless ($membercode eq "ad" || ",$saleusers," =~ /,$inmembername,/i);
找到 ';~ /,$inmembername,/i'; 3 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';jinghua.cgi'; :
jinghua.cgi/98: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';lbfriend.cgi'; :
lbfriend.cgi/102: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';pag.cgi'; :
pag.cgi/93: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';poll.cgi'; :
poll.cgi/113: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';post.cgi'; :
post.cgi/160: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';printpage.cgi'; :
printpage.cgi/99: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';reply_tree.cgi'; :
reply_tree.cgi/83: &ERROROUT("你不允许进入该论坛!") if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';setbank.cgi'; :
setbank.cgi/67: if (($membercode eq "ad" || ($membercode eq "smo" && $bankadminallow eq "all") || ",$bankmanager," =~ /,$inmembername,/i) && ($inpassword eq $password) && (lc($inmembername) eq lc($membername)))
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';topic.cgi'; :
topic.cgi/131: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
----------------------------------------
查找 ';~ /,$inmembername,/i'; 于 ';view.cgi'; :
view.cgi/130: &error(';进入论坛&你不允许进入该论坛!';) if (",$allowusers," !~ /,$inmembername,/i && $membercode ne ';ad';);
找到 ';~ /,$inmembername,/i'; 1 次。
以上十九处改为- ~ /\Q,$inmembername,\E/i
复制代码 补丁完成~! 所有LB5000(包括XP和MX版本),SuperLB以及LeoBBS及时打好补丁!
______________________________________________________________________________
以下是对程序版本: LeoBBS X Build041101一点建议,可能官方未修正~!  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1,文件[color=#DC143C]getnameinfo.pl
加入收藏夹意见;
在- require "data/membertitles.cgi" if ($mtitlemax eq "" || $mpostmarkmax eq "");
复制代码 后面加上- opendir (DIRS, "$lbdir");
- my @files = readdir(DIRS);
- closedir (DIRS);
- my @memfavdir = grep(/^memfav/i, @files);
- $memfavdir = $memfavdir[0];
复制代码 在- $pvmsggraphic{$membername} = qq~<span style=cursor:hand onClick="javascript:openScript(';messanger.cgi?action=new&touser=$tempmembername&actionto=msg';,600,400)" title="发送一个短消息给$membername{$membername}"><img src=$imagesurl/images/message.gif border=0 width=16 align=absmiddle>消息</span> ~;
复制代码 后面加入:- $favfile = (-e "${lbdir}$memfavdir/close/$membername{$membername}.cgi") ? "${lbdir}$memfavdir/close/$membername{$membername}.cgi" : "${lbdir}$memfavdir/open/$membername{$membername}.cgi";
- $favgraphic{$membername} = (-e $favfile) ? qq~<a href=fav.cgi?action=show&member=$tempmembername target=_blank title="查看$membername{$membername}的个人收藏"><img src=$imagesurl/images/memfav.gif border=0 width=16 align=absmiddle>收藏</a> ~ : "";
复制代码 在- \$icqgraphic{"$membername"} = qq~$icqgraphic{$membername}~;
复制代码 后面加上:- \$favgraphic{"$membername"} = qq~$favgraphic{$membername}~;
复制代码 2,文件[color=#DC143C]topic.cgi
在- $pvmsggraphic{$membername}$profilegraphic{$membername}
复制代码 后面加上:- $favgraphic{$membername}
复制代码 顺便给个收藏夹小图片
解决看别人的收藏夹,可能不让看也是故意的。
______________________________________________________________________________
文件[color=#DC143C]setbank.cgi
美化意见:
找到[color=#00008B]sub ebankadminlogin
把- table width=100% cellpadding=6 cellspacing=0>
复制代码 去掉;
并把- <td bgcolor=#333333 colspan=2><font color=#ffffff><b>欢迎来到银行行长办公室</b></font>
复制代码 改为- <td bgcolor=#2159C9 colspan=2><font color=#ffffff><b>欢迎来到银行行长办公室</b></font>
复制代码 并去掉最后一个[color=#00008B]</table>。
解决银行版面花而乱的样子
______________________________________________________________________________
文件[color=#DC143C]fav.cgi
美化意见:
找到- if ((lc($inmembername) eq lc($startedby))&&($nodispown eq "yes")){ $mypost="<img src=$imagesurl/images/$mypost_blogo title=我发表的主题> "}else {$mypost=""};
- $topicicon = "<img src=$imagesurl/images/topicnonew.gif width=14 border=0>";
- if (($threadposts >= $hottopicmark) && ($forumlastvisit < $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/topichot3.gif width=14 border=0>"; }
- elsif (($threadposts >= $hottopicmark) && ($forumlastvisit > $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/topichotnonew.gif width=14 border=0>"; }
- elsif (($threadposts < $hottopicmark) && ($forumlastvisit < $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/topicnew3.gif width=14 border=0>"; }
- elsif (($threadposts < $hottopicmark) && ($forumlastvisit > $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/topicnonew.gif width=14 border=0>"; }
- $forumcolorone=$forumcolortwo=$miscbacktwo if(($lastpostdate > $forumlastvisit) && ($inmembername ne "客人"));
- $threadstate = "poll" if (($posticon =~/<br>/i)&&($threadstate eq ""));
复制代码 改为:- if ((lc($inmembername) eq lc($startedby))&&($nodispown eq "yes")){ $mypost="<img src=$imagesurl/images/$skin/$mypost_blogo title=我发表的主题> "}else {$mypost=""};
- $topicicon = "<img src=$imagesurl/images/$skin/topicnonew.gif width=14 border=0>";
- if (($threadposts >= $hottopicmark) && ($forumlastvisit < $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/$skin/topichot3.gif width=14 border=0>"; }
- elsif (($threadposts >= $hottopicmark) && ($forumlastvisit > $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/$skin/topichotnonew.gif width=14 border=0>"; }
- elsif (($threadposts < $hottopicmark) && ($forumlastvisit < $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/$skin/topicnew3.gif width=14 border=0>"; }
- elsif (($threadposts < $hottopicmark) && ($forumlastvisit > $lastpostdate) && ($inmembername ne "客人")) { $topicicon = "<img src=$imagesurl/images/$skin/topicnonew.gif width=14 border=0>"; }
- $forumcolorone=$forumcolortwo=$miscbacktwo if(($lastpostdate > $forumlastvisit) && ($inmembername ne "客人"));
- $threadstate = "poll" if (($posticon =~/<br>/i)&&($threadstate eq ""));
复制代码 找到- if ($threadstate eq "closed") { $topicicon = "<img src=$imagesurl/images/topiclocked0.gif width=14 border=0>"; }
- elsif ($threadstate eq "poll") {
- if ($size >= $hotpollmark) { $topicicon = "<img src=$imagesurl/images/closedbhot.gif width=13 border=0>"; }
- else { $topicicon = "<img src=$imagesurl/images/closedb.gif width=13 border=0>"; }
- }
- elsif ($threadstate eq "pollclosed") { $topicicon = "<img src=$imagesurl/images/closedb1.gif width=13 border=0>"; }
复制代码 改为- if ($threadstate eq "closed") { $topicicon = "<img src=$imagesurl/images/$skin/topiclocked3.gif width=14 border=0>"; }
- elsif ($threadstate eq "poll") {
- if ($size >= $hotpollmark) { $topicicon = "<img src=$imagesurl/images/$skin/closedbhot.gif width=13 border=0>"; }
- else { $topicicon = "<img src=$imagesurl/images/$skin/closedb.gif width=13 border=0>"; }
- }
- elsif ($threadstate eq "pollclosed") { $topicicon = "<img src=$imagesurl/images/$skin/closedb1.gif width=13 border=0>"; }
复制代码 解决收藏夹某些图片的相对路径不符导致图片不能显示。
______________________________________________________________________________
文件[color=#DC143C]topic.cgi
美化意见:
找到- if (($usejhpoint eq "yes")&&($jhdata =~ /\_$topicid\_/)) {
- $jhimage = qq~ <img src="$imagesurl/images/$new_JH" align=absmiddle alt=本帖为精华帖子> ~;
- }
复制代码 改为:- if (($usejhpoint eq "yes")&&($jhdata =~ /\_$topicid\_/)) {
- $jhimage = qq~ <img src="$imagesurl/images/$skin/$new_JH" align=absmiddle alt=本帖为精华帖子> ~;
- }
复制代码 解决主题精华帖子某些图片的相对路径不符导致图片不能显示。
______________________________________________________________________________
文件[color=#DC143C]modscard.cgi
一些小的矫正并加上签到率:
找到[color=#00008B]sub top_page{[color]
在下面加上- my $total_member = 0;
- open (FILE, "$lbdir/data/lbmember.cgi");
- while(<FILE>){
- my @tmpuserdetail = split (/\t/, $_);
- chomp @tmpuserdetail;
- next unless($tmpuserdetail[1] eq "ad" || $tmpuserdetail[1] eq "smo" || $tmpuserdetail[1] eq "cmo" || $tmpuserdetail[1] eq "mo");
- $total_member++;
- }
- chomp @memberdata;
- close (FILE);
复制代码 找到[color=#00008B]if(-e $today_log){
在下面把- open(FILE,$today_log);
- $/="";
- $get_today_log = <FILE>;
- $/="\n";
- close(FILE);
- chop $get_today_log;
- $get_today_log =~s/[\n\r]/\_/g;
- $get_today_log =~s/^\_+//;
- $get_today_log =~s/\_+$//;
- $get_today_log = "\_$get_today_log\_";
- $pcard_or_not = 1 if($get_today_log=~/\_$inmembername\_/i);
- $get_today_log_list = $get_today_log;
- $get_today_log_list =~s/^\_+//;
- $get_today_log_list =~s/(.+?)\_/<option>$1<\/option>/gi;
复制代码 改为- open(FILE,$today_log);
- while(my $line = <FILE>){
- chomp $line;
- ($line,undef) = split(/\*/,$line);
- $get_today_log .= $line."_";
- $get_today_log_list .= ';<option>';.$line.';</option>';;
- $total_pcard++;
- }
- close(FILE);
- chop $get_today_log;
- $get_today_log = "\_$get_today_log\_";
- $pcard_or_not = 1 if($get_today_log=~/\_$inmembername\_/i);
复制代码 找到- $get_today_log_list.=qq~<option>$inmembername</option>~;
复制代码 在下面加上:
[color=#00008B]sub top_page{
紧接着在下面,注意在}外加上- $total_member = 1 unless($total_member);
- $pcard_pc = sprintf("%.2f",($total_pcard/$total_member)*100);
复制代码 找到(注意:一共两处)- <font color="$fontcolormisc">日期:<i>$today_date<i>
复制代码 接着后面加上- 签到率:<i>$pcard_pc%</i>
复制代码 找到- if (($userdetail[9]) && ($userdetail[9] =~ /^[0-9]+$/)) {
- $oicqgraphic = qq~<a href=http://search.tencent.com/cgi-bin/friend/user_show_info?ln=$userdetail[9] target=_blank title="查看 QQ:$oicqnumber的资料"><img src=$imagesurl/images/oicq.gif border=0 width=16 align=absmiddle>QQ</a>~;
- }
- if (($userdetail[10]) && ($userdetail[10] =~ /^[0-9]+$/)) {
- $icqgraphic = qq~<span style="cursor:hand" onClick="javascript:openScript(';misc.cgi?action=icq&UIN=$userdetail[10]';,450,300)" title="给 ICQ:$icqnumber 发个消息"><img src=$imagesurl/images/icq.gif border=0 width=16 align=absmiddle>ICQ</span>~;
- }
复制代码 改为- if (($userdetail[9]) && ($userdetail[9] =~ /^[0-9]+$/)) {
- $oicqgraphic = qq~<a href=http://search.tencent.com/cgi-bin/friend/user_show_info?ln=$userdetail[9] target=_blank title="查看 QQ:$userdetail[9]的资料"><img src=$imagesurl/images/oicq.gif border=0 width=16 align=absmiddle>QQ</a>~;
- }
- if (($userdetail[10]) && ($userdetail[10] =~ /^[0-9]+$/)) {
- $icqgraphic = qq~<span style="cursor:hand" onClick="javascript:openScript(';misc.cgi?action=icq&UIN=$userdetail[10]';,450,300)" title="给 ICQ:$userdetail[10] 发个消息"><img src=$imagesurl/images/icq.gif border=0 width=16 align=absmiddle>ICQ</span>~;
- }
复制代码 解决查看签到斑竹的QQtitle仍然显示是自己的QQ,并加上了签到率,让坛主或者说“一把手”心里有个底。Ps:最好是能够在loginout.cgi加上一个自动签到标记。
______________________________________________________________________________
文件[color=#DC143C]bbs.lib.pl
1,合理性建议:
在[color=#00008B]sub title {找到- if ($forumgraphic) {
- ($fgwidth,$fgheight) = split(/\|/,$fgwidth);
- if ($forumgraphic =~ /\.swf$/i) {$forumgraphicoutput = qq~<PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><embed src=$imagesurl/myimages/$forumgraphic quality=high width=$fgwidth height=$fgheight pluginspage="http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application\/x-shockwave-flash"><\/embed>~}
- else {$forumgraphicoutput = qq~<a href=forums.cgi?forum=$inforum><img src=$imagesurl/myimages/$forumgraphic border=0 height=60></a>~};
- } else {
- if ($boardlogo =~ /\.swf$/i) {$forumgraphicoutput = qq~<PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><embed src=$imagesurl/myimages/$boardlogo quality=high width=$boardlogow height=$boardlogoh pluginspage="http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application\/x-shockwave-flash"><\/embed>~}
- else {$forumgraphicoutput = qq~<a href=forums.cgi?forum=$inforum><img src=$imagesurl/myimages/$boardlogo border=0 height=60></a>~};
- }
复制代码 改为:- if ($forumgraphic) {
- ($fgwidth,$fgheight) = split(/\|/,$fgwidth);
- if ($forumgraphic =~ /\.swf$/i) {$forumgraphicoutput = qq~<PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><embed src=$imagesurl/myimages/$forumgraphic quality=high width=$fgwidth height=$fgheight pluginspage="http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application\/x-shockwave-flash"><\/embed>~}
- else {$forumgraphicoutput = qq~<a href=forums.cgi?forum=$inforum><img src=$imagesurl/myimages/$forumgraphic border=0 height=$fgheight></a>~};
- } else {
- if ($boardlogo =~ /\.swf$/i) {$forumgraphicoutput = qq~<PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><embed src=$imagesurl/myimages/$boardlogo quality=high width=$boardlogow height=$boardlogoh pluginspage="http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application\/x-shockwave-flash"><\/embed>~}
- else {$forumgraphicoutput = qq~<a href=forums.cgi?forum=$inforum><img src=$imagesurl/myimages/$boardlogo border=0 height=$fgheight></a>~};
- }
复制代码 解决分论坛的Logo大小由自己设定。
2,合理性建议:
在[color=#00008B]sub whosonline {找到- $fromwhere = "未知" if (length($fromwhere) > 40);
- $saveosinfo = "未知" if (length($saveosinfo) > 15);
- $savebrowseinfo = "未知" if (length($savebrowseinfo) > 28);
复制代码 改为:- $fromwhere = "未知" if (length($fromwhere) > 50);
- $saveosinfo = "未知" if (length($saveosinfo) > 20);
- $savebrowseinfo = "未知" if (length($savebrowseinfo) > 30);
复制代码 解决一些长地址范围导致未知的问题。可能有些问题看复杂了,我把[color=#DC143C]fastlogin.cgi也加上了IP,因为怎么引用,[color=#DC143C]bbs.lib.pl中的[color=#00008B]whosonline函数对[color=#DC143C]fastlogin.cgi的[color=#00008B]$trueipaddress无法识别,于是我在[color=#DC143C]fastlogin.cgi开始加上了一段- my $ipaddress = $ENV{';REMOTE_ADDR';};
- $trueipaddress = $ENV{';HTTP_X_FORWARDED_FOR';};
- $trueipaddress = $ipaddress if ($trueipaddress eq "" || $trueipaddress eq "unknown" || $trueipaddress =~ m/^192\.168\./ || $trueipaddress =~ m/^10\./);
- my $trueipaddress1 = $ENV{';HTTP_CLIENT_IP';};
- $trueipaddress = $trueipaddress1 if ($trueipaddress1 ne "" && $trueipaddress1 ne "unknown" && $trueipaddress1 !~ m/^192\.168\./ && $trueipaddress1 !~ m/^10\./);
复制代码 也许根本不需加,但是我怎么测试也不行,暂时加上为妙~~ :)
______________________________________________________________________________
文件[color=#DC143C]messanger.cgi
1,小缺陷:
在[color=#00008B]elsif ($action eq "read")找到- if ($inmsg < @outboxmessages - 1)
- {
- my $outboxdown = $inmsg + 1;
- (undef, $nreadstate, undef, $nmessagetitle, undef) = split(/\t/, $outboxmessages[$outboxdown]);
- $outboxmsgdown = qq~<a href=$thisprog?action=outread&msg=$outboxdown title="下一封訊息: ($readstatus{$nreadstate})\n訊息標題: $nmessagetitle">下一封</a>~;
- }
- if ($inmsg > 0)
- {
- my $outboxup = $inmsg - 1;
- (undef, $preadstate, undef, $pmessagetitle, undef) = split(/\t/, $outboxmessages[$outboxup]);
- $outboxmsgup = qq~<a href=$thisprog?action=outread&msg=$outboxup title="上一封訊息: ($readstatus{$preadstate})\n訊息標題: $pmessagetitle">上一封</a>~;
- }
- $outboxsplitline = " | " if ($outboxmsgdown ne "" && $outboxmsgup ne "");
- if ($outboxmsgdown ne "" || $outboxmsgup ne "")
- {
- $outboxtempone = "[ ";
- $outboxtemptwo = " ]";
- }
复制代码 改为:- if ($inmsg < @inboxmessages - 1)
- {
- my $inboxdown = $inmsg + 1;
- (undef, $nreadstate, undef, $nmessagetitle, undef) = split(/\t/, $inboxmessages[$outboxdown]);
- $inboxmsgdown = qq~<a href=$thisprog?action=read&msg=$inboxdown title="下一条消息: ($readstatus{$nreadstate})\n消息标题: $nmessagetitle">下一条</a>~;
- }
- if ($inmsg > 0)
- {
- my $inboxup = $inmsg - 1;
- (undef, $preadstate, undef, $pmessagetitle, undef) = split(/\t/, $inboxmessages[$outboxup]);
- $inboxmsgup = qq~<a href=$thisprog?action=read&msg=$inboxup title="上一条消息: ($readstatus{$preadstate})\n消息标题: $pmessagetitle">上一条</a>~;
- }
- $inboxsplitline = " | " if ($inboxmsgdown ne "" && $inboxmsgup ne "");
- if ($inboxmsgdown ne "" || $inboxmsgup ne "")
- {
- $inboxtempone = "[ ";
- $inboxtemptwo = " ]";
- }
复制代码 解决收件箱上翻下翻页面。[color=#990000]tsefai建议.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
我是一个呼吸着现在的空气而生活在过去的人
这样的注定孤独,孤独的身处闹市却犹如置身于荒漠
我已习惯了孤独,爱上孤独
他让我看清了自我,还原了自我
让我再静静的沉思中得到快乐和满足
再孤独的世界里我一遍又一遍
不厌其烦的改写着自己的过去
延伸到现在与未来
然而那只是泡沫般的美梦
产生的时刻又伴随着破灭的到来
在灰飞烟灭的瞬间我看到的是过程的美丽
而不是结果的悲哀。。。
|
|