⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 post.cgi

📁 一个linux论坛
💻 CGI
📖 第 1 页 / 共 2 页
字号:
#!/usr/bin/perl
#############################################################
#  LeoBoard ver.5000 / LB5000 / 雷傲超级论坛 ver.5000
#
#  版权所有: 雷傲工作室(原蓝宝石软件工作室)
#
#  制作人  : 山鹰糊 (Shining Hu)
#            花无缺 (Ifairy Han)
#
#  主页地址: http://www.CGIer.com/      CGI 编程者之家
#	     http://www.LeoBoard.com/   雷傲论坛支持主页
#	     http://www.leoBBS.com/     本论坛直通车
#
#############################################################
BEGIN {
    $start_time = (times)[0] + (times)[1];
    $LBPATH = '.';
    my $pgm = $0;
    $pgm =~s/\\/\//g;
    $pgm =~s/^.*\/([^\/]+)$/$1/g;
    unless (-e $LBPATH.'/'.$pgm) {
        foreach ($0, $ENV{'SCRIPT_FILENAME'}, $ENV{'PATH_TRANSLATED'}) {
            s!\\!/!g; s/^(.*)\/[^\/]+$/$1/g;
            if (-e $_ . '/' .$pgm) { $LBPATH = $_; last; }
        }
    }
    unshift (@INC, "$LBPATH");
#   $ENV{'TMP'}="$LBPATH/lock"; #如果你不能上传图片,请去掉前面的#
#   $ENV{'TEMP'}="$LBPATH/lock";#如果你不能上传图片,请去掉前面的#
}
use LBCGI;
$LBCGI::HEADERS_ONCE = 1;
require "code.cgi";
require "data/boardinfo.cgi";
require "data/styles.cgi";
require "lb.lib.pl";
require "lbmail.lib.pl";
require "rebuildlist.pl";

$|++;
$thisprog = "post.cgi";
$query = new LBCGI;
if ($COOKIE_USED eq 1) {$cookiepath ="";}
else {
    $boardurltemp =$boardurl;
    $boardurltemp =~ s/http\:\/\/(\S+?)\/(.*)/\/$2/;
    $cookiepath = $boardurltemp;
    $cookiepath =~ s/\/$//;
#    $cookiepath =~ tr/A-Z/a-z/;
}

$addme  = $query->param('addme');
$listmy = $query->param('listmy');

for ('forum','topic','membername','password','action','postno','inshowsignature',
     'notify','inshowemoticons','intopictitle','intopicdescription',
     'inpost','posticon','inhiddentopic','postweiwang','uselbcode','inwater') {
    next unless defined $_;
    next if $_ eq 'SEND_MAIL';
    $tp = $query->param($_);
    $tp = &cleaninput("$tp");
    ${$_} = $tp;
}
$intopictitle  = "*#!&*$intopictitle";
$inforum       = $forum;
$intopic       = $topic;
&error("打开文件&老大,别乱黑我的程序呀!") if (($intopic) && ($intopic !~ /^[0-9]+$/));
&error("打开文件&老大,别乱黑我的程序呀!") if ($inforum !~ /^[0-9]+$/);
&error("普通&请以正确的方式访问本程序!") if (($postweiwang > $maxweiwang)&&($inhiddentopic eq "yes"));
$inmembername  = $membername;
$inpassword    = $password;
$inpostno      = $postno;
$innotify      = $notify;
$currenttime   = time;
$postipaddress = &myip();
$inpost        =~ s/LBHIDDEN/LBHIDD\&\#069\;N/sg;
$inpost        =~ s/\[DISABLELBCODE\]/\[DISABLELBCOD\&\#069\;\]/sg;
$inpost        .=($uselbcode eq "yes")?"":"[DISABLELBCODE]" if ($action eq "addnew" || $action eq "addreply");
$inmembername = &stripMETA($inmembername);

$inposticon    = $posticon;

&ipbanned; #封杀一些 ip

if (($inpostno) && ($inpostno !~ /^[0-9]+$/)) { &error("普通&老大,别乱黑我的程序呀!"); }
if (!(-e "${lbdir}boarddata/list$inforum.cgi")) { &error ("发表新主题&对不起,这个论坛不存在!如果确定分论坛号码没错,那么请进入管理区修复论坛一次!"); }

if (-e "${lbdir}data/style${inforum}.cgi") { require "${lbdir}data/style${inforum}.cgi"; }
$maxupload = 300 if ($maxupload eq "");
$LBCGI::POST_MAX=1024 * $maxupload;
$LBCGI::DISABLE_UPLOADS = 0;

if ($inshowemoticons ne "yes") { $inshowemoticons eq "no"; }
if ($innotify ne "yes")        { $innotify eq "no"; }

if (! $inmembername) { $inmembername = $query->cookie("amembernamecookie"); }
if (! $inpassword)   { $inpassword   = $query->cookie("apasswordcookie"); }
$inmembername =~ s/[\a\f\n\e\0\r\t\`\~\!\@\#\$\%\^\&\*\(\)\+\=\\\{\}\;\'\:\"\,\.\/\<\>\?]//isg;
$inpassword =~ s/[\a\f\n\e\0\r\t\|\@\;\#\{\}\$]//isg;

if ($inmembername eq "" || $inmembername eq "客人" ) {
    $inmembername = "客人";
    $userregistered = "no";
} else {
    
    &getmember("$inmembername");
    &error("普通错误&此用户根本不存在!") if ($inpassword ne "" && $userregistered eq "no");
    &error("普通错误&密码与用户名不相符,请重新登录!") if ($inpassword ne $password && $userregistered ne "no");
}

if ($mainonoff == 1) { &InMaintenance; }

$mymembercode=$membercode;
$myrating=$rating;
$myrating="-6" if !($myrating);
$cpudisp = 1 if (($membercode eq "ad")||($membercode eq "smo")||($membercode eq "cmo"));
$maxpoststr = "" if ($maxpoststr eq 0);
$maxpoststr = 100 if (($maxpoststr < 100)&&($maxpoststr ne ""));

$advpost1=$query->param('advpost');
$advpost1  = $query->cookie("advpost") if ($advpost1 eq "");
$advpost = $advpost1 if ($advpost1 ne "");
$advpost=0 if ($advpost eq "");
$advcookie = cookie(-name => "advpost", -value => "$advpost", -expires => "+30d", -path => "$cookiepath/");
print header(-cookie  =>[$advcookie],-charset=>gb2312);
require "postjs.cgi" if ($advpost == 1);

if ($wwjf ne "no") {
    for (my $i=0;$i<$maxweiwang;$i++) {
	$weiwangoption.=qq~<option value=$i>$i</option>~;
    }
    $weiwangoptionbutton=qq~<input type=checkbox name="inhiddentopic" value="yes">加密此帖,只对部分用户可见,用户威望至少需要  <select name=postweiwang>$weiwangoption</select><br>~;
} else {
    undef $weiwangoptionbutton;
}

if ($nowater eq "on") { 
    $gsnum = 0 if ($gsnum<=0);
    $nowaterpost =qq~<tr><td bgcolor=$miscbackone><font color=$fontcolormisc><b>灌水限制</b></font></td><td bgcolor=$miscbackone><input type="radio" class=1 name="inwater" value="no"> 不许灌水  <input name="inwater" type="radio" class=1 value="yes" checked> 允许灌水     [如果选择“不许灌水”,则回复不得少于 <B>$gsnum</B> 字节]</td></tr>~;
}

$helpurl = &helpfiles("阅读标记");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -