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

📄 reg.cgi

📁 陈淑亭网络课堂:采用iis+perlis方式编写
💻 CGI
字号:
#!/perl/bin/perl
require "./setup.cgi";
&getform;
$username=$in{'username'};
$userpassword = $in{'userpassword'};
$userpasswd1=$in{'userpasswd1'};
$useremail=$in{'useremail'};
$userturename=$in{'userturename'};
$usersex=$in{'usersex'};
$flag=$in{'flag'}; #判断是否是老师注册
if ($flag eq "yes") 
{
unless (($username=~/^\w{1,15}$/)&&($userpassword=~/^\w{4,10}$/)&&($userpasswd1=~/^\w{4,10}$/)) {&error ("用户名和密码只能是字母和数字组成,最多15位,密码至少得是4位以上");}
unless(($username)&&($userpassword)&&($userpasswd1)&&($useremail)&&($userturename)&&($usersex)){
&error ("请输入完整必须填写的信息,谢谢!");}
if ($useremail =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/ || $useremail !~ /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/)  {&error ("抱歉,您输入的邮件格式可能有错,请修改,谢谢!");}
if ((-e "$adminpath/$username.cgi")||(-e "$userpath/$username.cgi")) {&error ("对不起,$username已经被人注册了,请换个名字,谢谢!");}
if ($userpassword ne $userpasswd1){&error ("对不起,您两次密码输入有误,请重新输入密码。谢谢!");}
$kind=0; #所属课程分类,由管理员来定义,初始值为0,表示帐号未审核
$num=0; #初始文章数为0
open (F,">$adminpath/$username.cgi");
print F "$userpassword\n$kind\n$num\n$userturename\n$useremail\n$usersex\n";
close (F);
}
else
{
$userphone=$in{'userphone'};
$useraddress=$in{'useraddress'};
$postcode=$in{'postcode'};
$userfrom=$in{'userfrom'};
$bookcode=$in{'bookcode'};
$education=$in{'education'};
$marital=$in{'marital'};
$occupation=$in{'occupation'};
unless(($username)&&($userpassword)&&($userpasswd1)&&($useremail)&&($userturename)) {&error ("请输入完整必须填写的信息,谢谢!");}
$kind="aA=bA=cA"; #记录学生的课程
unless (($username=~/^\w{1,15}$/)&&($userpassword=~/^\w{4,10}$/)&&($userpasswd1=~/^\w{4,10}$/)) {&error ("用户名和密码只能是字母和数字组成,最多15位,密码至少得是4位以上");}
if ((-e "$adminpath/$username.cgi")||(-e "$userpath/$username.cgi")) {&error ("对不起,$username已经被人注册了,请换个名字,谢谢!");}
if ($userpassword ne $userpasswd1) {&error ("对不起,您两次密码输入有误,请重新输入密码。谢谢!");}
if ($useremail =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/ || $useremail !~ /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/)  {&error ("抱歉,您输入的邮件格式可能有错,请修改,谢谢!");}
if ($userturename=~/=|\&|\#|\+|\/|\\|\^|\$|\%/) {&error ("所有的资料输入不能有非法字符");}
unless ($usersex) {$usersex=0;}
unless ($userfrom) {$userfrom=0;}
elsif ($userfrom    =~/=|\&|\#|\+|\/|\\|\^|\$|\%/) {&error ("所有的资料输入不能有非法字符");}
unless ($userphone) {$userphone=0;}
elsif ($userphone   =~/=|\&|\#|\+|\/|\\|\^|\$|\%/) {&error ("所有的资料输入不能有非法字符");}
unless ($useraddress) {$useraddress=0;}
elsif ($useraddress =~/=|\&|\#|\+|\/|\\|\^|\$|\%/) {&error ("所有的资料输入不能有非法字符");}
unless ($postcode) {$postcode=0;}
elsif ($postcode    =~/=|\&|\#|\+|\/|\\|\^|\$|\%/) {&error ("所有的资料输入不能有非法字符");} 
unless ($education) {$education=0;}
unless ($marital) {$marital=0;}
unless ($occupation) {$occupation=0;}
$usertime=time(); ##记录时间
open (F,">$userpath/$username.cgi");
print F "$userpassword\n";
print F "$kind\n";
print F "$userturename\n";
print F "$useremail\n";
print F "$usertime\n";
print F "$booktime\n";
print F "$usersex\n";
print F "$userfrom\n";
print F "$useraddress\n";
print F "$postcode\n";
print F "$userphone\n";
print F "$education\n";
print F "$marital\n";
print F "$occupation\n";
close (F);
}
print "Content-type: text/html\n\n";
print <<HTML;
<html>
<head>
<title>本窗口在5秒后自动关闭</title>
</head>
<body bgcolor="#ffffff" text="#000000">
<script language="JavaScript">
setTimeout("self.close()",5000)
</script>
<h1 align="center">注册成功</h1>
<hr>
<p align="center">【<a href="javascript:window.close()">关闭</a>】</p><br>
</body>
</html>
HTML


sub getform
{
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/<([^>]|\n)*>//g;
   $value =~ s/\|//g;
   $value =~ s/>/&gt;/g;
   $value =~ s/</&lt;/g;
   $in{$name} = $value;
}
}



⌨️ 快捷键说明

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