📄 user.php
字号:
function ChangeSpaceStyle($add){
global $empire,$dbtbpre;
$user_r=islogin();//是否登陆
$styleid=intval($add['styleid']);
if(!$styleid)
{
printerror('NotChangeSpaceStyleId','',1);
}
$sr=$empire->fetch1("select styleid,membergroup from {$dbtbpre}enewsspacestyle where styleid='$styleid'");
if(!$sr['styleid']||($sr['membergroup']&&!strstr($sr['membergroup'],','.$user_r[groupid].',')))
{
printerror('NotChangeSpaceStyleId','',1);
}
$sql=$empire->query("update {$dbtbpre}enewsmemberadd set spacestyleid='$styleid' where userid='$user_r[userid]' limit 1");
if($sql)
{
printerror('ChangeSpaceStyleSuccess','../member/mspace/ChangeStyle.php',1);
}
else
{
printerror('DbError','',1);
}
}
//设置空间
function DoSetSpace($add){
global $empire,$dbtbpre;
$user_r=islogin();//是否登陆
$spacename=htmlspecialchars($add['spacename']);
$spacegg=htmlspecialchars($add['spacegg']);
$sql=$empire->query("update {$dbtbpre}enewsmemberadd set spacename='$spacename',spacegg='$spacegg' where userid='$user_r[userid]' limit 1");
if($sql)
{
printerror('SetSpaceSuccess','../member/mspace/SetSpace.php',1);
}
else
{
printerror('DbError','',1);
}
}
//用户注册
function register($username,$password,$repassword,$email){
global $empire,$user_tablename,$public_r,$user_groupid,$user_username,$user_userid,$user_email,$user_password,$user_dopass,$user_rnd,$user_registertime,$user_register,$user_group,$user_saltnum,$user_salt,$user_seting,$forumgroupid,$registerurl,$dbtbpre,$user_regcookietime,$user_userfen,$user_checked,$level_r;
if($public_r['register_ok'])//关闭
{
printerror("CloseRegister","history.go(-1)",1);
}
if(!empty($registerurl))
{
Header("Location:$registerurl");
exit();
}
$add=$_POST;
$username=trim($username);
$password=trim($password);
$username=RepPostVar($username);
$password=RepPostVar($password);
if(!$username||!$password||!$email)
{
printerror("EmptyMember","history.go(-1)",1);
}
$user_groupid=(int)$user_groupid;
$groupid=(int)$add[groupid];
$groupid=empty($groupid)?$user_groupid:$groupid;
CheckMemberGroupCanReg($groupid);
//用户字数
$pr=$empire->fetch1("select min_userlen,max_userlen,min_passlen,max_passlen from {$dbtbpre}enewspublic limit 1");
$userlen=strlen($username);
if($userlen<$pr[min_userlen]||$userlen>$pr[max_userlen])
{
printerror("FaiUserlen","history.go(-1)",1);
}
//密码字数
$passlen=strlen($password);
if($passlen<$pr[min_passlen]||$passlen>$pr[max_passlen])
{
printerror("FailPasslen","history.go(-1)",1);
}
if($repassword!=$password)
{
printerror("NotRepassword","history.go(-1)",1);
}
if(!chemail($email))
{
printerror("EmailFail","history.go(-1)",1);
}
if(strstr($username,"|")||strstr($username,"*"))
{
printerror("NotSpeWord","history.go(-1)",1);
}
$username=RepPostStr($username);
$num=$empire->gettotal("select count(*) as total from ".$user_tablename." where ".$user_username."='$username' limit 1");
if($num)
{
printerror("ReUsername","history.go(-1)",1);
}
//注册时间
if($user_register)
{
$registertime=time();
}
else
{
$registertime=date("Y-m-d H:i:s");
}
$birthday=$y.$m.$d;
$rnd=make_password(12);//产生随机密码
//密码
if(empty($user_dopass))//单重md5
{
$password=md5($password);
}
elseif($user_dopass==2)//双重md5
{
$salt=make_password($user_saltnum);
$password=md5(md5($password).$salt);
}
elseif($user_dopass==3)//16位md5
{
$password=substr(md5($password),8,16);
}
$email=RepPostStr($email);
$checked=ReturnGroupChecked($groupid);
//验证附加表必填项
$fid=GetMemberFormId($groupid);
$member_r=ReturnDoMemberF($fid,$add,$mr,0,$username);
$sql=$empire->query("insert into ".$user_tablename."(".$user_username.",".$user_password.",".$user_email.",".$user_registertime.",".$user_group.",".$user_rnd.",".$user_userfen.",".$user_checked.") values('$username','$password','$email','$registertime',$groupid,'$rnd','$public_r[reggetfen]',$checked);");
//取得userid
$userid=$empire->lastid();
//附加表
$addr=$empire->fetch1("select * from {$dbtbpre}enewsmemberadd where userid='$userid'");
if(!$addr[userid])
{
$spacestyleid=ReturnGroupSpaceStyleid($groupid);
$sql1=$empire->query("insert into {$dbtbpre}enewsmemberadd(userid,spacestyleid".$member_r[0].") values($userid,$spacestyleid".$member_r[1].");");
}
if($sql)
{
$logincookie=0;
if($user_regcookietime)
{
$logincookie=time()+$user_regcookietime;
}
$set1=esetcookie("mlusername",$username,$logincookie);
$set2=esetcookie("mluserid",$userid,$logincookie);
$set3=esetcookie("mlgroupid",$groupid,$logincookie);
$set4=esetcookie("mlrnd",$rnd,$logincookie);
$location="../../";
$returnurl=getcvar('returnurl');
if($returnurl&&!strstr($returnurl,"e/member/iframe"))
{
$location=$returnurl;
}
$set5=esetcookie("returnurl","");
printerror("RegisterSuccess",$location,1);
}
else
{printerror("DbError","history.go(-1)",1);}
}
//信息修改
function EditInfo($password,$repassword,$oldpassword,$email){
global $empire,$user_tablename,$public_r,$user_userid,$user_username,$user_password,$user_dopass,$user_email,$user_salt,$user_saltnum,$dbtbpre,$user_group;
$user_r=islogin();//是否登陆
$userid=$user_r[userid];
$username=$user_r[username];
$rnd=$user_r[rnd];
$dousername=$username;
$groupid=$user_r[groupid];
if(!$userid||!$username||!trim($email))
{
printerror("NotEmpty","history.go(-1)",1);
}
if(!chemail($email))
{
printerror("EmailFail","history.go(-1)",1);
}
$email=RepPostStr($email);
$post=$_POST;
//编码转换
$username=doUtfAndGbk($username,0);
$email=doUtfAndGbk($email,0);
//修改密码
if($password)
{
if($password!=$repassword)
{
printerror("NotRepassword","history.go(-1)",1);
}
$password=RepPostVar($password);
$oldpassword=RepPostVar($oldpassword);
$password=doUtfAndGbk($password,0);
$oldpassword=doUtfAndGbk($oldpassword,0);
if(empty($user_dopass))//单重加密
{
$password=md5($password);
$oldpassword=md5($oldpassword);
}
elseif($user_dopass==2)//双重加密
{
$salt=make_password($user_saltnum);
$password=md5(md5($password).$salt);
$sa=",".$user_salt."='$salt'";
}
elseif($user_dopass==3)//16位md5
{
$password=substr(md5($password),8,16);
$oldpassword=substr(md5($oldpassword),8,16);
}
else
{}
$num=0;
//双重md5
if($user_dopass==2)
{
$ur=$empire->fetch1("select ".$user_userid.",".$user_salt.",".$user_password." from ".$user_tablename." where ".$user_username."='$username'");
$oldpassword=md5(md5($oldpassword).$ur[$user_salt]);
$num=0;
if($oldpassword==$ur[$user_password])
{$num=1;}
if(empty($ur[$user_userid]))
{$num=0;}
}
else
{
$num=$empire->gettotal("select count(*) as total from ".$user_tablename." where ".$user_username."='$username' and ".$user_password."='".$oldpassword."'");
}
if(!$num)
{
printerror("FailOldPassword","history.go(-1)",1);
}
$add=",".$user_password."='".$password."'".$sa;
}
//验证附加表必填项
$addr=$empire->fetch1("select * from {$dbtbpre}enewsmemberadd where userid='$userid'");
$user_r=$empire->fetch1("select ".$user_group." from ".$user_tablename." where ".$user_userid."='$userid'");
$fid=GetMemberFormId($user_r[$user_group]);
if(empty($addr[userid]))
{
$member_r=ReturnDoMemberF($fid,$post,$mr,0,$dousername);
}
else
{
$member_r=ReturnDoMemberF($fid,$post,$addr,1,$dousername);
}
$sql=$empire->query("update ".$user_tablename." set ".$user_email."='$email'".$add." where ".$user_userid."='$userid'");
//附加表
if(empty($addr[userid]))
{
$sql1=$empire->query("insert into {$dbtbpre}enewsmemberadd(userid".$member_r[0].") values($userid".$member_r[1].");");
}
else
{
$sql1=$empire->query("update {$dbtbpre}enewsmemberadd set userid='$userid'".$member_r[0]." where userid='$userid'");
}
if($sql)
{
printerror("EditInfoSuccess","../member/EditInfo",1);
}
else
{printerror("DbError","history.go(-1)",1);}
}
//----------------------------------是否登陆
function islogin($uid=0,$uname='',$urnd=''){
global $empire,$public_r,$editor,$user_tablename,$user_userid,$user_username,$user_email,$user_userfen,$user_money,$user_group,$user_groupid,$user_rnd,$user_zgroup,$user_userdate,$user_todaydown,$user_havemsg,$user_todaydate,$ecmsreurl,$eloginurl,$user_checked;
if($uid)
{$userid=(int)$uid;}
else
{$userid=(int)getcvar('mluserid');}
if($urnd)
{$rnd=$urnd;}
else
{$rnd=getcvar('mlrnd');}
if($eloginurl)
{$gotourl=$eloginurl;}
else
{$gotourl=$public_r['newsurl']."e/member/login";}
$petype=1;
if(!$userid)
{
if(!getcvar('returnurl'))
{
esetcookie("returnurl",$_SERVER['HTTP_REFERER'],0);
}
if($ecmsreurl==1)
{
$gotourl="history.go(-1)";
$petype=9;
}
elseif($ecmsreurl==2)
{
$phpmyself=urlencode($_SERVER['PHP_SELF']."?".$_SERVER["QUERY_STRING"]);
$gotourl=$public_r['newsurl']."e/member/login/login.php?prt=1&from=".$phpmyself;
$petype=9;
}
printerror("NotLogin",$gotourl,$petype);
}
$rnd=RepPostVar($rnd);
$cr=$empire->fetch1("select ".$user_userid.",".$user_username.",".$user_email.",".$user_group.",".$user_userfen.",".$user_money.",".$user_userdate.",".$user_todaydown.",".$user_zgroup.",".$user_havemsg.",".$user_todaydate.",".$user_checked." from ".$user_tablename." where ".$user_userid."='$userid' and ".$user_rnd."='$rnd' limit 1");
if(!$cr[$user_userid])
{
EmptyEcmsCookie();
if(!getcvar('returnurl'))
{
esetcookie("returnurl",$_SERVER['HTTP_REFERER'],0);
}
if($ecmsreurl==1)
{
$gotourl="history.go(-1)";
$petype=9;
}
elseif($ecmsreurl==2)
{
$phpmyself=urlencode($_SERVER['PHP_SELF']."?".$_SERVER["QUERY_STRING"]);
$gotourl=$public_r['newsurl']."e/member/login/login.php?prt=1&from=".$phpmyself;
$petype=9;
}
printerror("NotSingleLogin",$gotourl,$petype);
}
if($cr[$user_checked]==0)
{
EmptyEcmsCookie();
if($ecmsreurl==1)
{
$gotourl="history.go(-1)";
$petype=9;
}
elseif($ecmsreurl==2)
{
$phpmyself=urlencode($_SERVER['PHP_SELF']."?".$_SERVER["QUERY_STRING"]);
$gotourl=$public_r['newsurl']."e/member/login/login.php?prt=1&from=".$phpmyself;
$petype=9;
}
printerror("NotCheckedUser",'',$petype);
}
//默认会员组
if(empty($cr[$user_group]))
{
$usql=$empire->query("update ".$user_tablename." set ".$user_group."='$user_groupid' where ".$user_userid."='".$cr[$user_userid]."'");
$cr[$user_group]=$user_groupid;
}
//是否过期
if($cr[$user_userdate])
{
if($cr[$user_userdate]-time()<=0)
{
OutTimeZGroup($cr[$user_userid],$cr[$user_zgroup]);
$cr[$user_userdate]=0;
if($cr[$user_zgroup])
{
$cr[$user_group]=$cr[$user_zgroup];
$cr[$user_zgroup]=0;
}
}
}
$re[userid]=$cr[$user_userid];
$re[rnd]=$rnd;
$re[username]=doUtfAndGbk($cr[$user_username],1);
$re[email]=doUtfAndGbk($cr[$user_email],1);
$re[userfen]=$cr[$user_userfen];
$re[money]=$cr[$user_money];
$re[groupid]=$cr[$user_group];
$re[userdate]=$cr[$user_userdate];
$re[zgroupid]=$cr[$user_zgroup];
$re[todaydown]=$cr[$user_todaydown];
$re[todaydate]=$cr[$user_todaydate];
$re[havemsg]=$cr[$user_havemsg];
/*
if($cr[$user_havemsg])
{
echo"<script>window.status='您有新的悄悄话,请注意查收!';</script>";
}
*/
return $re;
}
//-------------------------------------退出登陆
function loginout1($userid,$username,$rnd){
global $empire,$public_r,$equiturl;
//是否登陆
$user_r=islogin();
if($equiturl)
{
Header("Location:$equiturl");
exit();
}
EmptyEcmsCookie();
$dopr=1;
if($_GET['prtype'])
{
$dopr=9;
}
$gotourl="../../";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -