📄 mainlogin.cgi
字号:
#!/usr/bin/perl
#############################################################
# 功能: 1.对客人显示登录框, 2.对以登录者显示欢迎信息,
# 3.对禁IP者显示禁止进入论坛信息,
# 4.对非禁IP者记录到论坛的访问统计中,“目前动作”显示为浏览主页
#
# 说明: 将本文件复制到leoboard.cgi同目录下,
# 在主页加上代码:
# <SCRIPT type="text/javascript" language="javascript" src="论坛url地址/mainlogin.cgi"></SCRIPT>
#
#############################################################
BEGIN {
$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");
}
use LBCGI;
$LBCGI::POST_MAX=2000;
$LBCGI::DISABLE_UPLOADS = 1;
$LBCGI::HEADERS_ONCE = 1;
require "data/boardinfo.cgi";
require "data/styles.cgi";
require "lb.lib.pl";
$|++;
$thisprog = "mainlogin.cgi";
&myipbanned; #封杀一些 ip
$query = new LBCGI;
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 = "客人";
}
else {
&getmember("$inmembername");
$inmembername = "客人" if ($userregistered eq "no");
}
if ($inmembername eq "客人") {
$str = qq~<FORM name=login action="$boardurl/loginout.cgi" method=post><INPUT type=hidden value=login name=action><INPUT type=hidden name=forum><BR>用户:<INPUT size=10 name=inmembername><BR>密码:<INPUT type=password size=10 name=inpassword><BR>Cookie <SELECT name=CookieDate><OPTION value="-1d" selected>不保存</OPTION><OPTION value=+1d>保存一天</OPTION><OPTION value=+30d>保存一月</OPTION><OPTION value=+20y>永久保存</OPTION></SELECT><BR><INPUT type=submit value=进入 name=Submit><INPUT type=reset value=取消 name=Submit></FORM><A target=_blank href="$boardurl/leoboard.cgi">参观</A> <A target=_blank href="$boardurl/register.cgi">注册</A> <A target=_blank href="$boardurl/profile.cgi?action=lostpassword">忘记密码</A><BR>~;
}
else {
$str = qq~<BR>欢迎您<BR>$inmembername<BR><BR><A target=_blank href="$boardurl/leoboard.cgi">进入</A> <A target=_blank href="$boardurl/loginout.cgi">重登录</A> <A href="$boardurl/loginout.cgi?action=logout">退出</A><BR>~;
}
print header(-charset=>gb2312);
print "document.write('$str')\n";
exit;
sub myipbanned {
if (open(FILE, "${lbdir}data/ipbans.cgi")) {
my @term_bannedmembers = <FILE>;
close(FILE);
my @term_vipmembers = grep(/^[0-9]/, @term_bannedmembers);
@term_bannedmembers = grep(/^\-/, @term_bannedmembers);
my $ipallow = "yes";
my $ipaddress = $ENV{"REMOTE_ADDR"};
$trueipaddress = $ENV{"HTTP_CLIENT_IP"};
$trueipaddress = $ENV{"HTTP_X_FORWARDED_FOR"} if ($trueipaddress eq "" || $trueipaddress eq "unknown");
$trueipaddress = $ipaddress if ($trueipaddress eq "" || $trueipaddress eq "unknown");
foreach (@term_bannedmembers) {
s/\r//sg;
s/^\-//sg;
chomp;
next if ($_ eq "");
if ($trueipaddress =~ /^$_/ || $ipaddress =~ /^$_/) {
$ipallow = $_;
last;
}
}
foreach (@term_vipmembers) {
s/\r//sg;
chomp;
next if ($_ eq "");
if ($trueipaddress =~ /^$_/ || $ipaddress =~ /^$_/) {
$ipallow = "yes";
last;
}
}
&error(" IP 被禁止&由于你没遵守本站规定!你的 IP ($ipallow) 被禁止!如有疑问,请联系管理员。") if ($ipallow ne "yes");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -