include_once ROOT_PATH . 'includes/lib_passport.php'; $id = register_hash('decode', $hash); if ($id > 0) { $sql = "UPDATE " . $ecs->table('users') . " SET is_validated = 1 WHERE user_id='{$id}'"; $db->query($sql); $sql = 'SELECT user_name, email FROM ' . $ecs->table('users') . " WHERE user_id = '{$id}'"; $row = $db->getRow($sql); show_message(sprintf($_LANG['validate_ok'], $row['user_name'], $row['email']), $_LANG['profile_lnk'], 'user.php'); } } show_message($_LANG['validate_fail']); } elseif ($action == 'is_registered') { include_once ROOT_PATH . 'includes/lib_passport.php'; $username = trim($_GET['username']); $username = json_str_iconv($username); if ($user->check_user($username) || admin_registered($username)) { echo 'false'; } else { echo 'true'; } } elseif ($action == 'check_email') { $email = trim($_GET['email']); if ($user->check_email($email)) { echo 'false'; } else { echo 'ok'; } } elseif ($action == 'login') { if (empty($back_act) && isset($GLOBALS['_SERVER']['HTTP_REFERER'])) { $back_act = strpos($GLOBALS['_SERVER']['HTTP_REFERER'], 'user.php') ? './index.php' : $GLOBALS['_SERVER']['HTTP_REFERER']; } else {
/** * 用户注册,登录函数 * * @access public * @param string $username 注册用户名 * @param string $password 用户密码 * @param string $email 注册email * @param array $other 注册的其他信息 * * @return bool $bool */ function register($username, $password, $other = array()) { /* 检查注册是否关闭 */ if (!empty($GLOBALS['_CFG']['shop_reg_closed'])) { $GLOBALS['err']->add($GLOBALS['_LANG']['shop_register_closed']); } /* 检查username */ if (empty($username)) { $GLOBALS['err']->add($GLOBALS['_LANG']['username_empty']); } else { if (preg_match('/\'\\/^\\s*$|^c:\\\\con\\\\con$|[%,\\*\\"\\s\\t\\<\\>\\&\'\\\\]/', $username)) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_invalid'], htmlspecialchars($username))); } } /* 检查是否和管理员重名 */ if (admin_registered($username)) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_exist'], $username)); return false; } if (!$GLOBALS['user']->add_user($username, $password, $email)) { if ($GLOBALS['user']->error == ERR_INVALID_USERNAME) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_invalid'], $username)); } elseif ($GLOBALS['user']->error == ERR_USERNAME_NOT_ALLOW) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_not_allow'], $username)); } elseif ($GLOBALS['user']->error == ERR_USERNAME_EXISTS) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_exist'], $username)); } else { $GLOBALS['err']->add('UNKNOWN ERROR!'); } //注册失败 return false; } else { //注册成功 /* 设置成登录状态 */ $GLOBALS['user']->set_session($username); $GLOBALS['user']->set_cookie($username); /* 注册送积分 */ if (!empty($GLOBALS['_CFG']['register_points'])) { log_account_change($_SESSION['user_id'], 0, 0, $GLOBALS['_CFG']['register_points'], $GLOBALS['_CFG']['register_points'], $GLOBALS['_LANG']['register_points']); } /*推荐处理*/ $affiliate = unserialize($GLOBALS['_CFG']['affiliate']); if (isset($affiliate['on']) && $affiliate['on'] == 1) { // 推荐开关开启 $up_uid = get_affiliate(); empty($affiliate) && ($affiliate = array()); $affiliate['config']['level_register_all'] = intval($affiliate['config']['level_register_all']); $affiliate['config']['level_register_up'] = intval($affiliate['config']['level_register_up']); if ($up_uid) { if (!empty($affiliate['config']['level_register_all'])) { if (!empty($affiliate['config']['level_register_up'])) { $rank_points = $GLOBALS['db']->getOne("SELECT rank_points FROM " . $GLOBALS['ecs']->table('users') . " WHERE user_id = '{$up_uid}'"); if ($rank_points + $affiliate['config']['level_register_all'] <= $affiliate['config']['level_register_up']) { log_account_change($up_uid, 0, 0, $affiliate['config']['level_register_all'], 0, sprintf($GLOBALS['_LANG']['register_affiliate'], $_SESSION['user_id'], $username)); } } else { log_account_change($up_uid, 0, 0, $affiliate['config']['level_register_all'], 0, $GLOBALS['_LANG']['register_affiliate']); } } //设置推荐人 $sql = 'UPDATE ' . $GLOBALS['ecs']->table('users') . ' SET parent_id = ' . $up_uid . ' WHERE user_id = ' . $_SESSION['user_id']; $GLOBALS['db']->query($sql); } } //定义other合法的变量数组 $other_key_array = array('msn', 'qq', 'office_phone', 'home_phone', 'mobile_phone', 'sina_weibo_id'); $update_data['reg_time'] = local_strtotime(local_date('Y-m-d H:i:s')); if ($other) { foreach ($other as $key => $val) { //删除非法key值 if (!in_array($key, $other_key_array)) { unset($other[$key]); } else { $other[$key] = htmlspecialchars(trim($val)); //防止用户输入javascript代码 } } $update_data = array_merge($update_data, $other); } $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $update_data, 'UPDATE', 'user_id = ' . $_SESSION['user_id']); update_user_info(); // 更新用户信息 recalculate_price(); // 重新计算购物车中的商品价格 return true; } }
function action_is_registered() { // 获取全局变量 $user = $GLOBALS['user']; $_CFG = $GLOBALS['_CFG']; $_LANG = $GLOBALS['_LANG']; $smarty = $GLOBALS['smarty']; $db = $GLOBALS['db']; $ecs = $GLOBALS['ecs']; $user_id = $_SESSION['user_id']; include_once ROOT_PATH . 'includes/lib_passport.php'; $username = trim($_GET['username']); $username = json_str_iconv($username); if ($user->check_user($username) || admin_registered($username)) { echo 'false'; } else { echo 'true'; } }
/** * 手机注册 */ function m_register($username, $password, $email, $other = array()) { /* 检查username */ if (empty($username)) { echo '用户名不能为空'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); return false; } if (preg_match('/\'\\/^\\s*$|^c:\\\\con\\\\con$|[%,\\*\\"\\s\\t\\<\\>\\&\'\\\\]/', $username)) { echo '用户名错误'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); return false; } /* 检查email */ if (empty($email)) { echo 'email不能为空'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); return false; } if (!is_email($email)) { echo 'email错误'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); return false; } /* 检查是否和管理员重名 */ if (admin_registered($username)) { echo '此用户已存在!'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); return false; } if (!$GLOBALS['user']->add_user($username, $password, $email)) { echo '注册失败!'; $Loaction = 'user.php?act=register'; ecs_header("Location: {$Loaction}\n"); //注册失败 return false; } else { //注册成功 /* 设置成登录状态 */ $GLOBALS['user']->set_session($username); $GLOBALS['user']->set_cookie($username); } //定义other合法的变量数组 $other_key_array = array('msn', 'qq', 'office_phone', 'home_phone', 'mobile_phone'); $update_data['reg_time'] = local_strtotime(local_date('Y-m-d H:i:s')); if ($other) { foreach ($other as $key => $val) { //删除非法key值 if (!in_array($key, $other_key_array)) { unset($other[$key]); } else { $other[$key] = htmlspecialchars(trim($val)); //防止用户输入javascript代码 } } $update_data = array_merge($update_data, $other); } $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $update_data, 'UPDATE', 'user_id = ' . $_SESSION['user_id']); update_user_info(); // 更新用户信息 return true; }
function is_registered ($username) { include_once(RPC_ROOT . 'includes/lib_passport.php'); $username = json_str_iconv($username); global $user; if ($user->check_user($username) || admin_registered($username)) { return false; } else { return true; } }
if ($result === true) { $sql = "UPDATE " . $ecs->table('users') . " SET {$shop_points[$fromcredits]}={$shop_points[$fromcredits]}-'{$exchange_amount}' WHERE user_id='{$row['user_id']}'"; $db->query($sql); $sql = "INSERT INTO " . $ecs->table('account_log') . "(user_id, {$shop_points[$fromcredits]}, change_time, change_desc, change_type)" . " VALUES ('{$row['user_id']}', '-{$exchange_amount}', '" . gmtime() . "', '" . $cfg['uc_lang']['exchange'] . "', '98')"; $db->query($sql); show_message(sprintf($_LANG['exchange_success'], $exchange_amount, $_LANG['exchange_points'][$fromcredits], $netamount, $credit['title']), $_LANG['transform_points'], 'user.php?act=transform_points'); } else { show_message($_LANG['exchange_error_1'], $_LANG['transform_points'], 'user.php?act=transform_points'); } } elseif ($action == 'clear_history') { setcookie('ECS[history]', '', 1); } elseif ($action == 'is_registered_ccx') { include_once ROOT_PATH . 'includes/lib_passport.php'; $username = trim($_GET['username']); $username = json_str_iconv($username); if ($user->check_user($username) || admin_registered($username) || strstr($username, 'o2o')) { echo 'false'; } else { echo $username; } } elseif ($action == 'send_mobil_message') { include_once ROOT_PATH . 'includes/clsMobileNotice_1.php'; $username = trim($_GET['username']); $username = json_str_iconv($username); //echo $username;exit; $code = rand(100000, 999999); $sql_number = "SELECT count(*) FROM " . $ecs->table('txd_user_code') . " WHERE account='" . $username . "'"; $user_send_number = $db->getOne($sql_number); if ($user_send_number < 5) { /*ccx 2014-12-15 发送短信*/ $MobileNotice = new MobileNotice();
/** * 用户注册,登录函数 * * @access public * @param string $username 注册用户名 * @param string $password 用户密码 * @param string $email 注册email * @param array $other 注册的其他信息 * * @return bool $bool */ function register($username, $password, $email, $other = array()) { /* 检查注册是否关闭 */ if (!empty($GLOBALS['_CFG']['shop_reg_closed'])) { $GLOBALS['err']->add($GLOBALS['_LANG']['shop_register_closed']); } /* 检查username */ if (empty($username)) { $GLOBALS['err']->add($GLOBALS['_LANG']['username_empty']); } else { if (preg_match('/\'\\/^\\s*$|^c:\\\\con\\\\con$|[%,\\*\\"\\s\\t\\<\\>\\&\'\\\\]/', $username)) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_invalid'], htmlspecialchars($username))); } } /* 检查email */ if (empty($email)) { $GLOBALS['err']->add($GLOBALS['_LANG']['email_empty']); } else { if (!is_email($email)) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['email_invalid'], htmlspecialchars($email))); } } if ($GLOBALS['err']->error_no > 0) { return false; } /* 检查是否和管理员重名 */ if (admin_registered($username)) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_exist'], $username)); return false; } if (!$GLOBALS['user']->add_user($username, $password, $email)) { if ($GLOBALS['user']->error == ERR_INVALID_USERNAME) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_invalid'], $username)); } elseif ($GLOBALS['user']->error == ERR_USERNAME_NOT_ALLOW) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_not_allow'], $username)); } elseif ($GLOBALS['user']->error == ERR_USERNAME_EXISTS) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_exist'], $username)); } elseif ($GLOBALS['user']->error == ERR_INVALID_EMAIL) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['email_invalid'], $email)); } elseif ($GLOBALS['user']->error == ERR_EMAIL_NOT_ALLOW) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['email_not_allow'], $email)); } elseif ($GLOBALS['user']->error == ERR_EMAIL_EXISTS) { $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['email_exist'], $email)); } else { $GLOBALS['err']->add('UNKNOWN ERROR!'); } //注册失败 return false; } else { //注册成功 /* 设置成登录状态 */ $GLOBALS['user']->set_session($username); $GLOBALS['user']->set_cookie($username); /* 注册送积分 */ if (!empty($GLOBALS['_CFG']['register_points'])) { log_account_change($_SESSION['user_id'], 0, 0, $GLOBALS['_CFG']['register_points'], $GLOBALS['_CFG']['register_points'], $GLOBALS['_LANG']['register_points']); } /*推荐处理*/ $affiliate = unserialize($GLOBALS['_CFG']['affiliate']); if (isset($affiliate['on']) && $affiliate['on'] == 1) { // 推荐开关开启 $up_uid = get_affiliate(); empty($affiliate) && ($affiliate = array()); $affiliate['config']['level_register_all'] = intval($affiliate['config']['level_register_all']); $affiliate['config']['level_register_up'] = intval($affiliate['config']['level_register_up']); if ($up_uid) { if (!empty($affiliate['config']['level_register_all'])) { if (!empty($affiliate['config']['level_register_up'])) { $rank_points = $GLOBALS['db']->getOne("SELECT rank_points FROM " . $GLOBALS['ecs']->table('users') . " WHERE user_id = '{$up_uid}'"); if ($rank_points + $affiliate['config']['level_register_all'] <= $affiliate['config']['level_register_up']) { log_account_change($up_uid, 0, 0, $affiliate['config']['level_register_all'], 0, sprintf($GLOBALS['_LANG']['register_affiliate'], $_SESSION['user_id'], $username)); } } else { log_account_change($up_uid, 0, 0, $affiliate['config']['level_register_all'], 0, $GLOBALS['_LANG']['register_affiliate']); } } //设置推荐人 $sql = 'UPDATE ' . $GLOBALS['ecs']->table('users') . ' SET parent_id = ' . $up_uid . ' WHERE user_id = ' . $_SESSION['user_id']; $GLOBALS['db']->query($sql); } } //定义other合法的变量数组 $other_key_array = array('msn', 'qq', 'office_phone', 'home_phone', 'mobile_phone'); $update_data['reg_time'] = local_strtotime(local_date('Y-m-d H:i:s')); if ($other) { foreach ($other as $key => $val) { //删除非法key值 if (!in_array($key, $other_key_array)) { unset($other[$key]); } else { $other[$key] = htmlspecialchars(trim($val)); //防止用户输入javascript代码 } } $update_data = array_merge($update_data, $other); } $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $update_data, 'UPDATE', 'user_id = ' . $_SESSION['user_id']); update_user_info(); // 更新用户信息 recalculate_price(); // 重新计算购物车中的商品价格 /*ross 跟踪订单 */ /* 取得订单来源 */ $username1 = $_SESSION['user_name']; if (isset($_COOKIE['request_info'])) { $request_info = unserialize(strtr($_COOKIE['request_info'], array("\\" => ""))); $from_cat = 1; $sql = "INSERT INTO " . "jindong_tongji " . "(order_sn, user_name,start_time,end_time,host,ip,start_url,end_url,from_cat) value('" . $order['order_sn'] . "','" . $username1 . "','" . $request_info['time'] . "','" . gmtime() . "','" . $request_info['host'] . "','" . $_SERVER['REMOTE_ADDR'] . "','" . $request_info['start_url'] . "','" . $request_info['end_url'] . "','" . $from_cat . "')"; } else { $sql = "INSERT INTO " . "jindong_tongji " . "(order_sn, user_name,start_time,end_time,host,ip,start_url,end_url,from_cat) value('" . $order['order_sn'] . "','" . $username1 . "','" . gmtime() . "','" . gmtime() . "','本站','" . $_SERVER['REMOTE_ADDR'] . "','本站','本站',1)"; } $GLOBALS['db']->query($sql); /*ross 跟踪订单 end */ return true; } }
/** * 手机注册 */ function m_register($username, $password, $email, $other = array(), $birthday) { /* 检查username */ if (empty($username)) { echo '<script>alert("用户名必须填写!");window.location.href="user.php?act=register"; </script>'; return false; } if (preg_match('/\'\\/^\\s*$|^c:\\\\con\\\\con$|[%,\\*\\"\\s\\t\\<\\>\\&\'\\\\]/', $username)) { echo '<script>alert("用户名错误!");window.location.href="user.php?act=register"; </script>'; return false; } /* 检查是否和管理员重名 */ if (admin_registered($username)) { echo '<script>alert("此用户已存在!");window.location.href="user.php?act=register"; </script>'; return false; } if (!$GLOBALS['user']->add_user($username, $password, $email)) { echo '<script>alert("注册失败!");window.location.href="user.php?act=register"; </script>'; //注册失败 return false; } else { //注册成功 /* 设置成登录状态 */ $GLOBALS['user']->set_session($username); $GLOBALS['user']->set_cookie($username); } //定义other合法的变量数组 $other_key_array = array('msn', 'qq', 'office_phone', 'home_phone', 'mobile_phone'); $update_data['reg_time'] = local_strtotime(local_date('Y-m-d H:i:s')); if ($other) { foreach ($other as $key => $val) { //删除非法key值 if (!in_array($key, $other_key_array)) { unset($other[$key]); } else { $other[$key] = htmlspecialchars(trim($val)); //防止用户输入javascript代码 } } $update_data = array_merge($update_data, $other); } $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $update_data, 'UPDATE', 'user_id = ' . $_SESSION['user_id']); update_user_info(); // 更新用户信息 $wxid = isset($_SESSION['wxid']) ? trim($_SESSION['wxid']) : ''; //echo 'wxid:'.$wxid; //die; if ($wxid !== '') { $wxnm = isset($_SESSION['wxnm']) ? $_SESSION['wxnm'] : ''; //echo $wxid; //die(); //echo $ecs->table('weixin_user'); //die(); $sql = "INSERT INTO " . $GLOBALS['ecs']->table('weixin_user') . " (uid, wxid, nickname) VALUES ('" . $_SESSION['user_id'] . "', '" . $wxid . "', '" . $wxnm . "')"; //echo $sql; //die; $GLOBALS['db']->query($sql); } //$birthday = isset($_POST['birthday_month']) ? compile_str(date('Y')."-".trim($_POST['birthday_month'])."-".trim($_POST['birthday_day'])) : ''; //echo $birthday; $sql = 'UPDATE ' . $GLOBALS['ecs']->table('users') . " SET `birthday`='" . $birthday . "' WHERE `user_id`='" . $_SESSION['user_id'] . "'"; //echo $sql; $GLOBALS['db']->query($sql); $Loaction = 'user.php?act=user_center'; ecs_header("Location: {$Loaction}\n"); return true; }