/** * 校验邮箱 * @param $email 邮箱 * @return int */ function checkEmail($email) { global $rg_config; if (!$email || !preg_match("/\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*/i", $email)) { return 1; } if ($rg_config['rg_emailtype'] == 1 && $rg_config['rg_email']) { $e_check = 0; $e_limit = explode(',', $rg_config['rg_email']); foreach ($e_limit as $key => $val) { if (strpos($email, "@" . $val) !== false) { $e_check = 1; break; } } if ($e_check == 0) { return 4; } } if ($rg_config['rg_emailtype'] == 2 && $rg_config['rg_banemail']) { $e_check = 0; $e_limit = explode(',', $rg_config['rg_banemail']); foreach ($e_limit as $key => $val) { if (strpos($email, "@" . $val) !== false) { $e_check = 1; break; } } if ($e_check == 1) { return 5; } } require_once R_P . 'uc_client/uc_client.php'; if (uc_user_get($email, 2)) { return 2; } else { return 0; } }
function user_edit($newpassword = '', $ignoreoldpw = 0) { $userarr = uc_user_get($this->username, 0); $checkedit = uc_user_edit($userarr['uid'], $this->username, md5($newpassword), $this->usermail); if ($checkedit == 1) { return 1; } else { return -1; } }
$num = $db->result_first("select count(*) from {$tpf}files where userid='{$uid}'"); if ($num) { $error = true; $sysmsg[] = '此用户帐号或回收站中还存在文件,请删除文件后再操作'; } if (!$error) { $uid = (int) gpc('uid', 'G', 0); $db->query_unbuffered("delete from {$tpf}folders where userid='{$uid}'"); $db->query_unbuffered("delete from {$tpf}users where userid='{$uid}'"); $db->query_unbuffered("update {$tpf}files set is_del=1 where userid='{$uid}'"); $db->query_unbuffered("delete from {$tpf}buddys where userid='{$uid}' or touserid='{$uid}'"); $db->query_unbuffered("delete from {$tpf}messages where userid='{$uid}' or touserid='{$uid}'"); if (display_plugin('api', 'open_uc_plugin', $settings['connect_uc'], 0)) { $username = @$db->result_first("select username from {$tpf}users where userid='{$uid}' limit 1"); if ($settings['connect_uc_type'] == 'phpwind') { $arr = uc_user_get($username, 1); uc_user_delete($arr['uid']); } else { $result = uc_user_delete($username); if (!$result) { $sysmsg[] = "UC:" . __('delete_user_error'); } } } $sysmsg[] = __('delete_user_success'); redirect(urr(ADMINCP, "item=users&menu=user&action=index"), $sysmsg); } else { redirect('back', $sysmsg); } break; case 'add_user':
public function foreGroundSignin($userName, $unencryptPw, $nextUrl, $rememberMe = 1) { $systemConfig = loadConfig('system'); $oUserName = $userName; //判断域名是不是ip $hostSections = explode('.', $_SERVER['HTTP_HOST']); //ip $isIP = 0; if (count($hostSections) == 4 && intval($hostSections[3])) { $isIP = 1; } // $sync = 0; $echoStr = ''; $signSuccess = 0; // if ($systemConfig['syncWithUc']) { $ucenterUserName = $userName; if (defined('UCENTER_CHARSET') && UCENTER_CHARSET == 'utf-8') { $ucenterUserName = iconv('gbk', 'utf-8', $ucenterUserName); } $sync = 1; include ABS_PATH . 'uc_client' . DIRECTORY_SEPARATOR . 'client.php'; list($uid, $userName, $password, $email) = uc_user_login($ucenterUserName, $unencryptPw); if ($uid > 0) { $ucsynlogin = uc_user_synlogin($uid); $signSuccess = 1; // $echoStr = $ucsynlogin; } } elseif ($systemConfig['syncWithPhpwind']) { $sync = 1; define('AUTOSYSTEM', '1'); include ABS_PATH . 'pw_api.php'; include ABS_PATH . 'uc_client' . DIRECTORY_SEPARATOR . 'uc_client.php'; $logintype = 0; //登陆类型 0,1,2分别为 用户名,uid,邮箱登陆 $pw = md5($unencryptPw); /* 同步登录的返回值 Array { Status:-1 用户名错误,找不到用户;-2 密码错误;-3 邮箱地址重复;1 正常登陆; Uid:用户ID Username:用户名 Synlogin: 同步登陆代码(js) } */ $userArr = uc_user_login($userName, $pw, $checkques = 0, $question = '', $answer = ''); $thisUser = uc_user_get($userName); $email = $thisUser['email']; // $status = $userArr['status']; $uid = $userArr['uid']; $userName = $userArr['username']; if ($status > 0) { //login success $signSuccess = 1; $echoStr = $userArr['synlogin']; } } if (!$sync) { //if not sync with ucenter or phpwind $signSuccess = $this->signin($oUserName, $unencryptPw); $this->uid = $signSuccess; } if ($signSuccess > 0) { //登录成功,设置session和cookies $u = $this->getUserByUsername($oUserName); // if ($u) { $this->uid = $u->uid; $uid = $u->uid; $this->updateIP($u->uid); $_SESSION['autouid'] = $u->uid; session_regenerate_id(); if ($rememberMe) { setcookie('autousername', $oUserName, SYS_TIME + 2592000, '/', DOMAIN_ROOT); if ($isIP) { setcookie('autousername', $oUserName, SYS_TIME + 2592000, '/', $_SERVER['HTTP_HOST']); } } unset($_SESSION['autoAdminUid']); } else { //ucenter或者phpwind上有此用户而系统内没有,注册到系统 $rt = $this->signup($oUserName, $email, $password); $this->uid = $rt; //login setcookie('autousername', $oUserName, SYS_TIME + 2592000, '/', DOMAIN_ROOT); if ($isIP) { setcookie('autousername', $oUserName, SYS_TIME + 2592000, '/', $_SERVER['HTTP_HOST']); } } //next url if (!strlen($nextUrl)) { $nextUrl = '/'; } //检查是不是经销商 $store_db = bpBase::loadModel('store_model'); $storeUserIndependent = 0; //经销商用户是否单独建表存储 if (intval(loadConfig('store', 'storeUserIndependent'))) { $storeUserIndependent = 1; //经销商用户是否单独建表存储 } $isStoreUser = 0; if (!$storeUserIndependent) { $isStoreUser = $store_db->get_one(array('uid' => $uid)); if (!$isStoreUser) { $usedcar_store_db = bpBase::loadModel('usedcar_store_model'); $isStoreUser = $usedcar_store_db->get_one(array('uid' => $uid)); } } if ($isStoreUser) { //如果是经销商 $_SESSION['autostoreuid'] = $u->uid; if (isset($_POST['rememberme'])) { setcookie('autostoreuid', $u->uid, SYS_TIME + 2592000, '/', DOMAIN_ROOT); } } if ($isStoreUser > 0 && AUTO_SKIN == 'ahauto') { //安徽汽车网的经销商用户会自动跳转到经销商控制面板 $nextUrl = '/storeUser.php'; } // if ($sync) { //如果跟其他集成,则输出同步登陆代码 if (defined('UCENTER_CHARSET') && UCENTER_CHARSET == 'utf-8') { $echoStr = iconv('utf-8', 'gbk', $echoStr); } //$successStr='<script>Cookie.write(\'jsusername\',\''.$oUserName.'\',{domain:\''.DOMAIN_ROOT.'\'});</script>'; } else { //$successStr='<script>Cookie.write(\'jsusername\',\''.$oUserName.'\',{domain:\''.DOMAIN_ROOT.'\'});</script>'; //return $signSuccess; } setcookie('jsusername', escape($oUserName), SYS_TIME + 2592000, '/', DOMAIN_ROOT); if ($sync) { echo $echoStr . '<script src="' . JS_URL_ROOT . '/mootools1.3.js"></script> <script src="' . JS_URL_ROOT . '/mootools-more.js"></script>' . $successStr . '<span style="font-size:12px;">' . $oUserName . ',登陆成功,正在跳转</span><script> window.addEvent(\'domready\',function(){ (function(){window.location.href=\'' . $nextUrl . '\';}).delay(2000); }) </script>'; } else { showMessage('登录成功' . $successStr, $nextUrl, 2000, 0, 0); } } else { //登录不成功 if (!isset($_POST['userType'])) { $backUrl = MAIN_URL_ROOT . '/sign.php?oper=signin'; } else { $backUrl = $_SERVER['HTTP_REFERER']; } showMessage('用户名和密码不匹配', $backUrl, 2000, 1, 1); return -1; } }
if ($rg_config['rg_emailtype'] == 2 && $rg_config['rg_banemail']) { $e_check = 0; $e_limit = explode(',', $rg_config['rg_banemail']); foreach ($e_limit as $key => $val) { if (strpos($email, "@" . $val) !== false) { $e_check = 1; break; } } if ($e_check == 1) { echo 5; ajax_footer(); } } require_once R_P . 'uc_client/uc_client.php'; if (uc_user_get($email, 2)) { echo 2; } else { echo 0; } } elseif ($type == 'reggdcode') { InitGP('gdcode', 'P'); if (!$gdcode || !SafeCheck(explode("\t", StrCode(GetCookie('cknum'), 'DECODE')), strtoupper($gdcode), 'cknum', 1800)) { echo 1; } else { echo 0; } } elseif ($type == 'qanswer') { InitGP(array('answer', 'question'), 'P'); if ($db_question && (!isset($db_answer[$question]) || $answer != $db_answer[$question])) { echo 1;