$get = FALSE; $req_uri = explode('/', $_SERVER["REQUEST_URI"], -1); $req_uri = implode('/', $req_uri); $jssdk = new JSSDK("wx2d39a6c422ad663c", "e339b975f47c4a16b2b4b41f10fb5ef1"); // 测试id //$jssdk = new JSSDK("wxae45c193de06d5a4", "f9a61bd7a83a5302a9960a84eb9e8ba3"); global $user_class; $user_info = new stdClass(); if (isset($_GET['code']) && isset($_GET['state']) && strlen($_GET['code']) == 32) { $get = TRUE; $code = sanitize_text_field($_GET['code']); $state = sanitize_text_field($_GET['state']); } if ($get) { //As long as we get here, there is no need to check $user_info = $jssdk->getPageUserInfo($code); if (!empty($user_info->openid)) { // if successfully get the user information, then we are able to process. $cookies->set("nickname", $user_info->nickname, 30, "days"); $cookies->set('user_id', $user_info->user_id, 30, "days"); $cookies->set('openid', $user_info->openid, 30, "days"); $cookies->set('city', $user_info->city, 30, "days"); $cookies->set('country', $user_info->country, 30, "days"); $cookies->set('headimgurl', $user_info->headimgurl, 30, "days"); $cookies->set('new_login', 1); $string = $user_info->open_id . "oneu"; $ver_code = substr(md5($string), -9); $cookies->set('ver_code_user_data', $ver_code, 30, "days"); $res = $user_class->set_user_info($user_info->openid, $user_info); } else { //relocated to the login page, to get code again.