介绍
这篇文章将为大家详细讲解有关利用php怎么实现一个自动登录微信并获取昵称的功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
/* * *,获取当前页面完整URL地址 */function get_url (), { sys_protocal 美元;=,收取($ _SERVER [& # 39; SERVER_PORT& # 39;]),,,, $ _SERVER [& # 39; SERVER_PORT& # 39;],==, & # 39; 443 & # 39;, ?, & # 39; https://& # 39;,:, & # 39; http://& # 39;; _SERVER php_self 美元;=,[& # 39;PHP_SELF& # 39;], ?, $ _SERVER [& # 39; PHP_SELF& # 39;],:, $ _SERVER [& # 39; SCRIPT_NAME& # 39;]; path_info 美元;=,收取($ _SERVER [& # 39; PATH_INFO& # 39;]), ?, $ _SERVER [& # 39; PATH_INFO& # 39;],:, & # 39; & # 39;; relate_url 美元;=,收取($ _SERVER [& # 39; REQUEST_URI& # 39;]), ?, $ _SERVER [& # 39; REQUEST_URI& # 39;],:, php_self美元。(收取($ _SERVER [& # 39; QUERY_STRING& # 39;]), ?, & # 39; ? & # 39;。$ _SERVER [& # 39; QUERY_STRING& # 39;],:, path_info美元); return sys_protocal美元。(收取($ _SERVER [& # 39; HTTP_HOST& # 39;]), ?, $ _SERVER [& # 39; HTTP_HOST& # 39;],:, & # 39; & # 39;)。relate_url美元; } $ wxch_config =, db 美元;→,getRow (“SELECT  *,得到“ecs_weixin_config”, WHERE “id”,=, 1“); 时间=美元appid $ wxch_config [& # 39; appid& # 39;]; 时间=美元appsecret $ wxch_config [& # 39; appsecret& # 39;]; $ APPID =, appid美元; 美元SCRETID =$ appsecret; 如果(! $ _SESSION [& # 39; user_id # 39;),,,,大小写敏感($ _SERVER [& # 39; HTTP_USER_AGENT& # 39;],, & # 39; MicroMessenger& # 39;), !==, false) { if (!收取($ _GET[& # 39;代码# 39;))) { $ backurl =, get_url ();=//url 美元、美元jsApi→createOauthUrlForCode ($ backurl); url 美元;=,“https://open.weixin.qq.com/connect/oauth3/authorize?appid="。美元APPID干净,redirect_uri=?urlencode (backurl美元)干净,response_type=code&范围=snsapi_base&国家=123 # wechat_redirect";//echo $ url; 标题(“位置:url"美元;); 其他} {//获取代码码,以获取openid 时间=美元code $ _GET[& # 39;代码# 39;];=美元url “https://api.weixin.qq.com/sns/oauth3/access_token?appid="。美元APPID !”,秘密=啊C涝猄CRETID !”,代码=啊C涝删蛔约旱拇?grant_type=authorization_code"; $ re =, curl_get_contents1 ($ url); $ rearr =, json_decode (re美元,真实); 时间=美元openid $ rearr [& # 39; openid # 39;];//var_dump ($ rearr);//美元jsApi→setCode($代码);=//openid 美元、美元jsApi→getOpenid (); user_name 美元;=,$ db→getOne (“select  uname 得到ecs_weixin_user where wxid =, & # 39; openid} {$ & # 39;“); 如果(openid 美元;,,,! user_name美元){,//注册进入 $ passw =, md5 (& # 39; shanmao.me& # 39; .rand (18650144002)); wxch_user_sql 美元;=,“INSERT  INTO “ecs_weixin_user”, (“wxid”,“喂”),VALUES (& # 39; openid # 39;美元,& # 39;3 & # 39;)“; db 美元;→,查询(wxch_user_sql美元); $ ecs_user_id =, db 美元;→,insert_id (); 如果(ecs_user_id<美元;=0){ 退出(& # 39;error get  insert_id& # 39;); } 时间=美元url3 “https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential& appid=啊C涝猘ppid !”,秘密=癝CRETID美元; $ re3 =, curl_get_contents1 ($ url3); $ re3arr =, json_decode (re3美元,真实); 时间=美元token $ re3arr [& # 39; access_token& # 39;]; url2 美元;=,“https://api.weixin.qq.com/cgi-bin/user/info?access_token="。美元干净自己的令牌,openid=啊C涝删蛔约旱膐penid和lang=zh_CN"; $ re2 =, curl_get_contents1 ($ url2); $ rearr2 =, json_decode (re2公司美元,真实); 时间=美元uc_username $ rearr2[& # 39;昵称# 39;]?美元rearr2[& # 39;昵称# 39;]:,& # 39;doubag& # 39;,只ecs_user_id美元; $ time =, gmtime (); user_sql 美元;=,“INSERT  INTO “ecs_users”, (“user_name”、“密码”、“reg_time”), VALUES (& # 39; uc_username& # 39;美元,& # 39;passw& # 39;美元,& # 39;时间# 39;美元)“; db 美元;→,查询(user_sql美元); uc_update 美元;=,“UPDATE  ecs_weixin_user SET “uname”,=, & # 39; uc_username& # 39;美元,WHERE “uid”,=, & # 39; $ ecs_user_id& # 39;“; db 美元;→,查询(uc_update美元); $ user→set_session ($ uc_username); $ user→set_cookie (uc_username美元,1); update_user_info ();/* $ up_uid =, get_affiliate (); 如果(up_uid>美元;0){ sql 美元;=,& # 39;UPDATE ecs_users SET parent_id =, & # 39;,只up_uid 美元;只& # 39;,WHERE user_id =, & # 39;,只ecs_user_id美元; db 美元;→查询($ sql); 头(& # 39;地点:,user.php ?列出=1 & # 39;); } */其他}{ $ user→set_session ($ user_name); $ user→set_cookie (user_name美元,1); update_user_info (); }//setcookie (“sopenid" openid美元,时间()+ 864000,& # 39;/& # 39;); } }//var_dump ($ openid); function curl_get_contents1 ($ url), { $ ch =, curl_init (); CURLOPT_URL, curl_setopt (ch,美元,美元url); curl_setopt (ch,美元,CURLOPT_TIMEOUT,, 2); curl_setopt (ch,美元,CURLOPT_USERAGENT,,“IE 6.0“); null null null null null null null null null利用php怎么实现一个自动登录微信并获取昵称的功能