①. 参考配置截图
②. 注意匹配对应目录以及令牌
/** * 微信开发配置控制器 * Class WeixinController * @package M\Controller */ class WeixinController extends Controller { public function index() { import('Org.Wechat.Weixin'); //参数传值 token、AppID、AppSecert $wechat = new \Weixin('zxxxi', 'wxxxxxxxxx89', 'efxxxxxxxxxxxxxxxxxxxxxxxb7'); if (!isset($_GET['echostr'])) { //TODO 调用响应消息函数 自动回复 $wechat->responseMsg(); } else { //实现网址接入,调用验证消息函数 $wechat->valid(); } } }
③. 必要文件上传
微信公众平台近期发现规定需要在相应域名的根目录下上传文件,具体可从公众号下载。
二. 请求授权登录,获取微信用户信息
①. 代码参考
下面是本人摘抄并精简的部分代码,具体的业务逻辑需要自己相应进行补充或删减
import('Org.Wechat.Weixin'); //参数传值 token、AppID、AppSecert $wechat=new \Weixin('zxxxxi','wxxxxxxxxxxxxx9','efxxxxxxxxxxxxxxxxxxxxxxxxxxxx7'); //可理解为这是当下的链接地址 $url = "http://www.xxxxx.com".$_SERVER['REQUEST_URI']; //TODO 判断 memcache是否有值,是否过期 (此处只是一个判断举例) if(!S(session('XXXNAME').'_NAMEID')){ if(!$_GET['code']){ $redirect_uri = $url; $urls=$wechat->getOauthRedirect($redirect_uri); header("Location:".$urls); die; } } $reT=$wechat->getOauthAccessToken(); //TODO 如果获得 token值 if($reT){ $openid = $reT['openid']; $user_info = $wechat->getOauthUserinfo($reT['access_token'],$openid); //查询数据库是否存在 $userData = M('users') ->where("openid = '$openid'") ->Field('user_id,user_name,abnormal') ->find(); if ($userData['user_id']) { //执行操作 或者跳转页面 header("Location:???????"); }else{ //没有帐号需要转到用户名填写页面来完成授权 $maxuid = M('users')->max('user_id'); $user['openid'] = $openid; $user['nickname'] = $user_info['nickname']; $user['sex'] = $user_info['sex']; $user['reg_time'] = time(); $user['user_img'] = $user_info['headimgurl']; //TODO 进行新用户的添加 $addTag = add('users',$user); } }else{ //重新跳转,或其他操作... }
内容版权声明:除非注明,否则皆为本站原创文章。