www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/login.php
<?php define('NOROBOT', TRUE); include_once './include/general.inc.php'; include_once M_ROOT.'./include/common.fun.php'; if(empty($forward)) $forward = M_REFERER; $mode = empty($mode) ? '' : $mode; $action = empty($action) ? 'login' : $action; if($action == 'login'){ if($memberid && $enable_uc){ require_once M_ROOT.'./include/ucenter/config.inc.php'; require_once M_ROOT.'./uc_client/client.php'; $ucresult = uc_get_user($curuser->infos['mname']); if(is_array($ucresult)){ list($uid,$username) = uc_get_user($curuser->infos['mname']); $uc_synlogin = uc_user_synlogin($uid); echo $ucsynlogin; } } if(!submitcheck('cmslogin')){ $temparr = array('forward' => rawurlencode($forward)); if($mode == 'js'){ js_write(template(empty($curuser->infos['mid']) ? 'jslogin' : 'jsloginok',$temparr)); }else{ if($enable_pptin && !empty($pptin_url) && $pptin_login){ $url = $pptin_url.$pptin_login; $url .= (strpos($url,'?') ? '&' : '?').'forward='.rawurlencode($forward); header('location:'.$url); exit; } mexit(template('login',$temparr)); } }else{ if($enable_pptin && !empty($pptin_url) && $pptin_login){ $url = $pptin_url.$pptin_login; $url .= (strpos($url,'?') ? '&' : '?').'forward='.rawurlencode($forward); header('location:'.$url); exit; } $username = trim($username); if(!regcode_pass('login',empty($regcode) ? '' : trim($regcode))) message(lang('regcode error'),$forward); if(strlen($username) < 3) message(lang('member cname illegal'),$forward); if(!$password || $password != addslashes($password)) message(lang('password illegal'),$forward); $guestexp = '\xA1\xA1|^Guest|^\xD3\xCE\xBF\xCD|\xB9\x43\xAB\xC8'; if(preg_match("/^\s*$|^c:\\con\\con$|[%,\*\"\s\t\<\>\&]|$guestexp/is", $username)) { message(lang('member cname illegal'),$forward); } if($enable_uc){ include_once M_ROOT.'./include/ucenter/uc.inc.php'; } $md5_password = md5($password); if($cmember = $db->fetch_one("SELECT mid,mname,password,email,checked FROM {$tblprefix}members WHERE mname='$username' AND password='$md5_password'")){ if($cmember['checked'] == 1){ $memberid = $cmember['mid']; msetcookie('userauth', authcode("$md5_password\t$cmember[mid]",'ENCODE'),2592000); if($enable_pptout && !empty($pptout_file) && !empty($pptout_url)){ include M_ROOT.'./include/pptout/'.$pptout_file.'.php'; header('location:'.$url); exit; } message(lang('member login succeed'),$forward); }elseif($cmember['checked'] == 2){//需要重新激活的会员 message(lang('outsite register member , want active !'),'adminm.php?action=memactive&ppt=1&username='.rawurlencode($username).'&password='.rawurlencode($password).'&forward='.rawurlencode($forward)); }else message(lang('nocheck member !'),$forward); } $password = preg_replace("/^(.{".round(strlen($password) / 4)."})(.+?)(.{".round(strlen($password) / 6)."})$/s", "\\1***\\3", $password); $record = mhtmlspecialchars($timestamp."\t".stripslashes($username)."\t".$password."\t".$onlineip); record2file('badlogin',$record); message(lang('member login failed'),$forward); } }elseif($action == 'logout'){ if($enable_uc){ include_once M_ROOT.'./include/ucenter/uc.inc.php'; } $cmember = $curuser->infos; if($enable_pptin && !empty($pptin_url) && $pptin_logout){ $url = $pptin_url.$pptin_logout; $url .= (strpos($url,'?') ? '&' : '?').'forward='.rawurlencode($forward); header('location:'.$url); exit; } mclearcookie(); if($enable_pptout && !empty($pptout_file) && !empty($pptout_url)){ include M_ROOT.'./include/pptout/'.$pptout_file.'.php'; header('location:'.$url); exit; } message(lang('member logout succeed'),$forward); } ?>