📄 profile.cgi
字号:
$newtimedifference = &cleanarea("$newtimedifference");
$newpersonalavatar = &cleanarea("$newpersonalavatar");
$newpersonalwidth = &cleanarea("$newpersonalwidth");
$newpersonalheight = &cleanarea("$newpersonalheight");
$newemailaddress = &cleanarea("$newemailaddress");
$newmembertitle = &cleanarea("$newmembertitle");
$newjhmp = &cleanarea("$newjhmp");
$inuserflag = &cleanarea("$inuserflag");
$inuserxz = &cleanarea("$inuserxz");
$inusersx = &cleanarea("$inusersx");
$newyear = &cleanarea("$newyear");
$newmonth = &cleanarea("$newmonth");
$newday = &cleanarea("$newday");
$newsex = &cleanarea("$newsex");
$newsignature = &cleanarea("$newsignature");
$inuseravatar = &cleanarea("$inuseravatar");
if ($newsignature) {
$newsignature =~ s/\t//g;
$newsignature =~ s/\r//g;
$newsignature =~ s/ / /g;
$newsignature =~ s/\ /\ /g;
$newsignature =~ s/\n\n/\n\ \n/isg;
$newsignature =~ s/\n/\[br\]/isg;
$newsignature =~ s/\[br\]\[br\]/\[br\]\ \[br\]/isg;
}
if ($newinterests) {
$newinterests =~ s/<P>/<BR>/ig;
$newinterests =~ s/<BR><BR>/<BR>/ig;
}
# make sure its a valid form
@testsig = split(/\[br\]/,$newsignature);
$siglines = @testsig;
if ($query -> param('getpassq')=~/\|/||$query -> param('getpassa')=~/\|/) {
&error("密码提示问题和答案&密码提示问题和答案中,不允许有非法字符,请更换提问和答案!");
}
if(length($newlocation)>12) { &error("修改资料&来自地区过长,请不要超过12个字符(6个汉字)!"); }
if ($siglines > $maxsignline) { &error("修改资料&对不起,在您的签名中只允许有 $maxsignline 行!"); }
if (length($newsignature) > $maxsignlegth) {print header(-charset=>gb2312);&error("修改资料&对不起,签名不能超过 $maxsignlegth 字符!"); }
if($newpassword1 =~ /[^a-zA-Z0-9]/) { print header(-charset=>gb2312); &error("修改资料&密码只允许大小写字母和数字的组合!!"); }
if(length($newmembertitle)>20) { &error("修改资料&个人头衔过长,请不要超过20个字符(10个汉字)!"); }
$newmembertitle =~ s/\t//isg;
if(length($newjhmp)>20) { &error("修改资料&江湖门派过长,请不要超过20个字符(10个汉字)!"); }
$newjhmp =~ s/\t//isg;
@testins = split(/\<br\>/,$newinterests);
$inslines = @testins;
if ($inslines > $maxinsline) { print header(-charset=>gb2312);&error("用户注册&对不起,个人简介只允许有 $maxinsline 行!"); }
if (length($newinterests) > $maxinslegth) {&error("修改资料&对不起,个人简介不能超过 $maxinslegth 字符!"); }
$newyear =~ s/\D//g;
if (($newyear eq "")||($newmonth eq "")||($newday eq "")) {
$newyear = "";
$newmonth = "";
$newday = "";
}
$newborn = "$newyear/$newmonth/$newday";
if ($newborn ne "//") { #开始自动判断星座
if ($newyear-1900 < 0) {$inusersx = "";} # 无效年份
else {
$inusersx = "sx".(($newyear-1900) % 12 + 1);
}
if ($newmonth eq "01") {
if (($newday >= 1)&&($newday <=19)) {
$inuserxz = "z10";
}
else {
$inuserxz = "z11";
}
}
elsif ($newmonth eq "02") {
if (($newday >= 1)&&($newday <=18)) {
$inuserxz = "z11";
}
else {
$inuserxz = "z12";
}
}
elsif ($newmonth eq "03") {
if (($newday >= 1)&&($newday <=20)) {
$inuserxz = "z12";
}
else {
$inuserxz = "z1";
}
}
elsif ($newmonth eq "04") {
if (($newday >= 1)&&($newday <=19)) {
$inuserxz = "z1";
}
else {
$inuserxz = "z2";
}
}
elsif ($newmonth eq "05") {
if (($newday >= 1)&&($newday <=20)) {
$inuserxz = "z2";
}
else {
$inuserxz = "z3";
}
}
elsif ($newmonth eq "06") {
if (($newday >= 1)&&($newday <=21)) {
$inuserxz = "z3";
}
else {
$inuserxz = "z4";
}
}
elsif ($newmonth eq "07") {
if (($newday >= 1)&&($newday <=22)) {
$inuserxz = "z4";
}
else {
$inuserxz = "z5";
}
}
elsif ($newmonth eq "08") {
if (($newday >= 1)&&($newday <=22)) {
$inuserxz = "z5";
}
else {
$inuserxz = "z6";
}
}
elsif ($newmonth eq "09") {
if (($newday >= 1)&&($newday <=22)) {
$inuserxz = "z6";
}
else {
$inuserxz = "z7";
}
}
elsif ($newmonth eq "10") {
if (($newday >= 1)&&($newday <=23)) {
$inuserxz = "z7";
}
else {
$inuserxz = "z8";
}
}
elsif ($newmonth eq "11") {
if (($newday >= 1)&&($newday <=21)) {
$inuserxz = "z8";
}
else {
$inuserxz = "z9";
}
}
elsif ($newmonth eq "12") {
if (($newday >= 1)&&($newday <=21)) {
$inuserxz = "z9";
}
else {
$inuserxz = "z10";
}
}
}
if (($newpersonalavatar)&&($newpersonalwidth)&&($newpersonalheight)) {
if ($newpersonalavatar !~ /^http:\/\/[\w\W]+\.[\w\W]+$/) {
print header(-charset=>gb2312);&error("用户注册&自定义头像的 URL 地址有问题!");
}
if (($newpersonalavatar !~ /\.gif$/i)&&($newpersonalavatar !~ /\.jpg$/isg)&&($newpersonalavatar !~ /\.png$/isg)&&($newpersonalavatar !~ /\.bmp$/isg)&&($newpersonalavatar !~ /\.swf$/isg)) {
print header(-charset=>gb2312);&error("用户注册&自定义头像必须为 PNG、GIF、JPG、BMP、SWF 格式") ;
}
if (($newpersonalwidth < 20)||($newpersonalwidth > $maxposticonwidth)) {
&error("用户注册&对不起,自定义图像宽度必须在 20 -- $maxposticonwidth 像素之间!");
}
if (($newpersonalheight < 20)||($newpersonalheight > $maxposticonheight)) {
&error("用户注册&对不起,自定义图像高度必须在 20 -- $maxposticonheight 像素之间!");
}
$inuseravatar = "noavatar";
$newpersonalavatar =~ s/${imagesurl}/\$imagesurl/o;
}
else {
if ($addme){
$newpersonalavatar="";
}else{
$newpersonalavatar=""; $newpersonalwidth=""; $newpersonalheight="";
}
$memberfiletitle = $inmembername;
$memberfiletitle =~ s/ /\_/isg;
$memberfiletitle =~ tr/A-Z/a-z/;
unlink ("${imagesdir}usravatars/$memberfiletitle.gif");
unlink ("${imagesdir}usravatars/$memberfiletitle.png");
unlink ("${imagesdir}usravatars/$memberfiletitle.jpg");
unlink ("${imagesdir}usravatars/$memberfiletitle.swf");
unlink ("${imagesdir}usravatars/$memberfiletitle.bmp");
} #清除自定义头像信息
if ($newemailaddress eq "") { $blankfields = "yes"; }
if ($newpassword1 ne $newpassword2) {&error("修改资料&你输入的两次密码不相同,如果你不想修改密码,请保持这两项为空!"); }
if (($newpassword1 ne "")&&($newpassword2 ne "")) {
if(length($newpassword1)<8) { &error("用户注册&密码太短了,请更换!密码必须 8 位以上!"); }
# if ($newpassword1 =~ /^[0-9]+$/) { &error("用户注册&密码请不要全部为数字,请更换!"); }
$newpassword = $newpassword1;
}
else { $newpassword = $oldpassword; }
if ($blankfields) {
&error("修改资料&请输入用户名、邮件地址,这些是必需的!");
}
$memberfiletitle = $inmembername;
$memberfiletitle =~ s/ /\_/isg;
$memberfiletitle =~ tr/A-Z/a-z/;
if (($dofilter eq "yes")||($dofilter eq "all")) {
my $temp = &dofilter("$newsignature\t$newlocation\t$membertitle\t$newinterests\t$jhmp\t$newhomepage");
($newsignature,$newlocation,$membertitle,$newinterests,$jhmp,$newhomepage) = split(/\t/,$temp);
}
if ($addme) {
if (($newpersonalwidth < 20)||($newpersonalwidth > $maxposticonwidth)) {
print header(-charset=>gb2312);&error("用户注册$personalwidth&对不起,自定义图像宽度必须在 20 -- $maxposticonwidth 像素之间!");
}
if (($newpersonalheight < 20)||($newpersonalheight > $maxposticonheight)) {
print header(-c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -