$cookie_uname = strim($request['email']); //用户名或邮箱 $cookie_upwd = strim($request['pwd']); //密码 if ($cookie_uname != '' && $cookie_upwd != '') { $cookie_uname = strim($cookie_uname); if (strlen($cookie_upwd) != 32) { $cookie_upwd = md5($cookie_upwd); } $cookie_upwd = md5($cookie_upwd . "_EASE_COOKIE"); auto_do_login_user($cookie_uname, $cookie_upwd); $GLOBALS['user_info'] = es_session::get('user_info'); } } require_once APP_ROOT_PATH . "app/Lib/main/core/main_lib.php"; refresh_user_info(); //刷新购物车 require_once APP_ROOT_PATH . "system/model/cart.php"; refresh_cart_list(); require APP_ROOT_PATH . 'app/Lib/common.php'; require APP_ROOT_PATH . 'sjmapi/lib/functions.php'; //缓存的名称以MAPI_开头 require APP_ROOT_PATH . 'sjmapi/lib/logUtils.php'; define('AS_LOG_DIR', APP_ROOT_PATH . 'sjmapi/log/'); define('AS_DEBUG', true); //$domain = app_conf("PUBLIC_DOMAIN_ROOT")==''?get_domain().APP_ROOT:app_conf("PUBLIC_DOMAIN_ROOT"); //file_put_contents(APP_ROOT_PATH. "sjmapi/log/bm_".strftime("%Y%m%d%H%M%S",time()).".txt",print_r($domain,true)); $m_config = getMConfig(); //初始化手机端配置 define('VERSION', 1); //接口版本号,float 类型
public function dophlogin() { $user_mobile = strim($_POST['user_mobile']); $sms_verify = strim($_POST['sms_verify']); if (app_conf("SMS_ON") == 0) { $data['status'] = false; $data['info'] = "短信功能未开启"; ajax_return($data); } if ($user_mobile == "") { $data['status'] = false; $data['info'] = "请输入手机号"; $data['field'] = "user_mobile"; ajax_return($data); } if ($sms_verify == "") { $data['status'] = false; $data['info'] = "请输入收到的验证码"; $data['field'] = "sms_verify"; ajax_return($data); } $sql = "DELETE FROM " . DB_PREFIX . "sms_mobile_verify WHERE add_time <=" . (NOW_TIME - SMS_EXPIRESPAN); $GLOBALS['db']->query($sql); $mobile_data = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "sms_mobile_verify where mobile_phone = '" . $user_mobile . "'"); if ($mobile_data['code'] == $sms_verify) { //开始登录 //1. 有用户使用已有用户登录 //2. 无用户产生一个用户登录 require_once APP_ROOT_PATH . "system/model/user.php"; if (check_ipop_limit(CLIENT_IP, "user_dophlogin", intval(app_conf("SUBMIT_DELAY")))) { $user_info = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where mobile = '" . $user_mobile . "'"); $GLOBALS['db']->query("delete from " . DB_PREFIX . "sms_mobile_verify where mobile_phone = '" . $user_mobile . "'"); if ($user_info) { //使用已有用户 $result = do_login_user($user_info['user_name'], $user_info['user_pwd']); if ($result['status']) { $s_user_info = es_session::get("user_info"); if (strim($_REQUEST['form_prefix']) == "ajax") { $GLOBALS['user_info'] = $s_user_info; refresh_user_info(); if ($GLOBALS['user_info']) { $msg_count = $GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "msg_box where user_id = " . intval($GLOBALS['user_info']['id']) . " and is_read = 0 and is_delete = 0"); $GLOBALS['tmpl']->assign("msg_count", intval($msg_count)); $GLOBALS['tmpl']->assign("user_info", $GLOBALS['user_info']); //输出签到结果 $signin_result = es_session::get("signin_result"); if ($signin_result['status']) { $GLOBALS['tmpl']->assign("signin_result", json_encode($signin_result)); es_session::delete("signin_result"); } } $tip = $GLOBALS['tmpl']->fetch("inc/insert/load_user_tip.html"); } if (intval($_REQUEST['save_mobile']) == 1) { es_cookie::set("fanwe_mobile", $user_mobile, 3600 * 24 * 7); } $GLOBALS['db']->query("delete from " . DB_PREFIX . "sms_mobile_verify where mobile_phone = '" . $user_mobile . "'"); $return['status'] = true; $return['info'] = "登录成功"; $return['data'] = $result['msg']; $return['jump'] = get_gopreview(); $return['tip'] = $tip; ajax_return($return); } else { if ($result['data'] == ACCOUNT_NO_EXIST_ERROR) { $field = ""; $err = $GLOBALS['lang']['USER_NOT_EXIST']; } if ($result['data'] == ACCOUNT_PASSWORD_ERROR) { $field = ""; $err = $GLOBALS['lang']['PASSWORD_ERROR']; } if ($result['data'] == ACCOUNT_NO_VERIFY_ERROR) { $field = ""; $err = $GLOBALS['lang']['USER_NOT_VERIFY']; } $data['status'] = false; $data['info'] = $err; $data['field'] = $field; ajax_return($data); } } else { //ip限制 $ip = CLIENT_IP; $ip_nums = $GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "user where login_ip = '" . $ip . "'"); if ($ip_nums > intval(app_conf("IP_LIMIT_NUM")) && intval(app_conf("IP_LIMIT_NUM")) > 0) { $data['status'] = false; $data['info'] = $GLOBALS['lang']['IP_LIMIT_ERROR']; ajax_return($data); } global_run(); if ($GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "user where user_name = '" . $user_mobile . "' or mobile = '" . $user_mobile . "' or email = '" . $user_mobile . "'") > 0) { $data['status'] = false; $data['info'] = "手机号已被抢占"; ajax_return($data); } //生成新用户 $user_data = array(); $user_data['mobile'] = $user_mobile; /* $user_data['user_pwd'] = md5(rand(100000,999999)); $user_data['is_effect'] = 1; $user_data['pid'] = $GLOBALS['ref_uid']; $user_data['create_time'] = NOW_TIME; $user_data['update_time'] = NOW_TIME; $user_data['login_time'] = NOW_TIME; $user_data['login_ip'] = CLIENT_IP; $user_data['is_tmp'] = 1; $GLOBALS['db']->autoExecute(DB_PREFIX."user",$user_data,"INSERT","","SILENT"); $user_id = intval($GLOBALS['db']->insert_id()); if($user_id==0) { $data['status'] = false; $data['info'] = "手机号已被抢占"; ajax_return($data); } $user_name = "游客_".$user_id; $GLOBALS['db']->query("update ".DB_PREFIX."user set user_name = '".$user_name."' where id = ".$user_id,"SILENT"); $result = do_login_user($user_name,$user_data['user_pwd']); */ $rs_data = auto_create($user_data, 1); if (!$rs_data['status']) { $data['status'] = false; $data['info'] = $rs_data['info']; ajax_return($data); } $result = do_login_user($rs_data['user_data']['user_name'], $rs_data['user_data']['user_pwd']); if ($result['status']) { $s_user_info = es_session::get("user_info"); if (strim($_REQUEST['form_prefix']) == "ajax") { $GLOBALS['user_info'] = $s_user_info; refresh_user_info(); if ($GLOBALS['user_info']) { $msg_count = $GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "msg_box where user_id = " . intval($GLOBALS['user_info']['id']) . " and is_read = 0 and is_delete = 0"); $GLOBALS['tmpl']->assign("msg_count", intval($msg_count)); $GLOBALS['tmpl']->assign("user_info", $GLOBALS['user_info']); //输出签到结果 $signin_result = es_session::get("signin_result"); if ($signin_result['status']) { $GLOBALS['tmpl']->assign("signin_result", json_encode($signin_result)); es_session::delete("signin_result"); } } $tip = $GLOBALS['tmpl']->fetch("inc/insert/load_user_tip.html"); } if (intval($_REQUEST['save_mobile']) == 1) { es_cookie::set("fanwe_mobile", $user_mobile, 3600 * 24 * 7); } $GLOBALS['db']->query("delete from " . DB_PREFIX . "sms_mobile_verify where mobile_phone = '" . $user_mobile . "'"); $return['status'] = true; $return['info'] = "登录成功"; $return['data'] = $result['msg']; $return['jump'] = get_gopreview(); $return['tip'] = $tip; ajax_return($return); } } } else { showErr("提交太快了", 1); } } else { $data['status'] = false; $data['info'] = "验证码错误"; $data['field'] = "sms_verify"; ajax_return($data); } }
/** * 前端全运行函数,生成系统前台使用的全局变量 * 1. 定位城市 GLOBALS['city']; * 2. 加载会员 GLOBALS['user_info']; * 3. 生成语言包 * 4. 加载推荐人与来路 * 5. 更新购物车 */ function global_run() { if (app_conf("SHOP_OPEN") == 0) { app_redirect(url("index", "close")); } //处理城市 global $city; require_once APP_ROOT_PATH . "system/model/city.php"; $city = City::locate_city(); global $geo; $geo = City::locate_geo(floatval($_REQUEST['xpoint']), floatval($_REQUEST['ypoint'])); //输出语言包的js if (!file_exists(get_real_path() . "public/runtime/app/lang.js")) { $str = "var LANG = {"; foreach ($GLOBALS['lang'] as $k => $lang_row) { $str .= "\"" . $k . "\":\"" . str_replace("nbr", "\\n", addslashes($lang_row)) . "\","; } $str = substr($str, 0, -1); $str .= "};"; @file_put_contents(get_real_path() . "public/runtime/app/lang.js", $str); } //会员自动登录及输出 global $user_info; global $user_logined; require_once APP_ROOT_PATH . "system/model/user.php"; $user_info = es_session::get('user_info'); if (empty($user_info)) { $cookie_uname = es_cookie::get("user_name") ? es_cookie::get("user_name") : ''; $cookie_upwd = es_cookie::get("user_pwd") ? es_cookie::get("user_pwd") : ''; if ($cookie_uname != '' && $cookie_upwd != '' && !es_session::get("user_info")) { $cookie_uname = strim($cookie_uname); $cookie_upwd = strim($cookie_upwd); auto_do_login_user($cookie_uname, $cookie_upwd); $user_info = es_session::get('user_info'); } } refresh_user_info(); //刷新购物车 require_once APP_ROOT_PATH . "system/model/cart.php"; refresh_cart_list(); global $ref_uid; //保存返利的cookie if ($_REQUEST['r']) { $rid = intval(base64_decode($_REQUEST['r'])); $ref_uid = intval($GLOBALS['db']->getOne("select id from " . DB_PREFIX . "user where id = " . intval($rid))); es_cookie::set("REFERRAL_USER", intval($ref_uid)); } else { //获取存在的推荐人ID if (intval(es_cookie::get("REFERRAL_USER")) > 0) { $ref_uid = intval($GLOBALS['db']->getOne("select id from " . DB_PREFIX . "user where id = " . intval(es_cookie::get("REFERRAL_USER")))); } } global $referer; //保存来路 // es_cookie::delete("referer_url"); if (!es_cookie::get("referer_url")) { if (!preg_match("/" . urlencode(SITE_DOMAIN . APP_ROOT) . "/", urlencode($_SERVER["HTTP_REFERER"]))) { $ref_url = $_SERVER["HTTP_REFERER"]; if (substr($ref_url, 0, 7) == "http://" || substr($ref_url, 0, 8) == "https://") { preg_match("/http[s]*:\\/\\/[^\\/]+/", $ref_url, $ref_url); $referer = $ref_url[0]; if ($referer) { es_cookie::set("referer_url", $referer); } } } } else { $referer = es_cookie::get("referer_url"); } $referer = strim($referer); }