📄 login.cgi
字号:
#!/usr/bin/perl
#------------------------------------------------------#
# 本程序为Yuzi工作室提供 #
# Yuzi论坛3000(BBS3000)v4.00 #
#------------------------------------------------------#
$cgipa="."; # CGI程序文件的绝对路径
######################
## 以下部分不需修改 ##
######################
require "$cgipa/setup.cgi";
&GetCookies;
if ($ENV{'REQUEST_METHOD'} eq "POST") {
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
}
else {
$buffer = $ENV{'QUERY_STRING'};
}
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value=~tr/+/ /;
$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value=~s/<!--(.|\n)*-->//g;
$value=~s/\t/ /g;
$value=~s/>/>/g;
$value=~s/</</g;
$FORM{$name} = $value;
}
$username=$FORM{'username'};
$userpsd=$FORM{'userpsd'};
$menu=$FORM{'menu'};
$url=$FORM{'url'};
$id=$FORM{'id'};
if($menu eq "login"){&login;exit;}
elsif($menu eq "login_frame"){&login_frame;exit;}
elsif($menu eq ""){
print "Content-type: text/html\n\n";
print <<EOF;
<html><link REL="SHORTCUT ICON" href=$imagurl/ybb.ico><title>登录社区</title><FRAMESET name=main_frame rows=*,0 frameborder=0>
<FRAME name=yuzi_frame src=login.cgi?menu=login_frame><FRAME name=message src=$imagurl/loading.htm>
EOF
exit;
}
exit;
###################
sub login_frame{
$back=-1;
if($url ne ""){$back=-2;}
&css;
print <<EOF;
<TITLE>登陆社区</TITLE><BODY background="$imagurl/bg.gif"><CENTER><br><br><br><br><br>
<form action="$ym/login.cgi" method=post>
<input type=hidden name=url value="$url">
<input type=hidden name=menu value=login><table cellSpacing=2 width=205 border=0><tr bgColor=$bgcolor0><td width="63">
<div align=center><a href=list.cgi target=_top><font color=$bgcolor4>社区首页</font></a>
</div></td><td width="61"><div align="center"><a href="yhreg.cgi"><font color=$bgcolor4>免费注册</font></a>
</div></td><td width="61"><div align="center"><a href="yhxiu.cgi#mail"><font color=$bgcolor4>忘记密码</font></a>
</div></td></tr><tr><td colSpan="3" width="197" align="center" bgcolor=$bgcolor2>用户名称:</font> <input size="15" name="username"><br>
用户密码: <input type="password" size="15" value name="userpsd"><br>
<input type="checkbox" name="xuansave" value="1">记住密码
<input type="checkbox" name="estate" value="1">隐身登陆
<br><input type="submit" value=" 登陆 " name="Submit"> <input type="reset" value=" 取消 " name="Submit">
</td></FORM></tr>
</table>
<br><a href=javascript:history.go($back)>BACK</a>
</html>
EOF
exit;
}
###################
sub login{
if($username eq ""){&errorview("请输入您的用户名称");}
if ( -e "$filepath/yhzl/$username.cgi"){
open(PSD,"$filepath/yhzl/$username.cgi");
$line=<PSD>;
close(PSD);
($rdpassword)=split(/\t/,$line);
if($userpsd ne "$rdpassword"){&errorview("您的密码错误!");}}else{
&errorview("此用户名还没有在本社区注册过!");exit;
}
print "Content-type: text/html\n\n";
if($FORM{'xuansave'} eq "1"){$savetime="expires=\"+expireDate.toGMTString()+\";";}
print <<yuzi;
<SCRIPT>
expireDate=new Date;
expireDate.setYear(expireDate.getYear()+1);
document.cookie="username="+"$username"+";$savetime";
document.cookie="password="+"$userpsd"+";$savetime";
document.cookie="estate="+"$FORM{'estate'}"+";$savetime";
document.cookie="xuansave="+"$FORM{'xuansave'}"+";$savetime";
</SCRIPT>
yuzi
if($FORM{'url'} ne ""){
print qq~
<script>document.location='$FORM{'url'}'</script>
~
}else{
print qq~
<script>window.open('list.cgi','_top');</script></head></html>
~
}
}
######################### END OF SCRIPT #########################
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -