public function OAuth() {
header('Content-type: text/html; charset=utf-8');
//首先获取微信配置信息
$m_sssmall_conf_weixin = M('sssmall_conf_weixin');
$conf = $m_sssmall_conf_weixin->where('id=1')->find();
//将appid、appsecret设为超全局变量,便于调用。
$appid = $conf['appid'];
$appsecret = $conf['appsecret'];
//$access_token = getApiToken();
dump($_SESSION['oauth']);
//条件判断(假如session不存在,进行页面授权,并设置session)
if (empty($_SESSION['oauth']) && empty($_GET['code'])) {
$redirect_uri = $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; //此即为本页面地址
$redirect_uri = urlencode($redirect_uri);
$getCodeUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' . $appid . '&redirect_uri=' . $redirect_uri . '&response_type=code&scope=snsapi_userinfo&state=oauth#wechat_redirect';
redirect($getCodeUrl, 0);
} elseif (!empty($_GET['code']) && empty($_SESSION['oauth'])) {
$getAccesstokenUrl = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' . $appid . '&secret=' . $appsecret . '&code=' . $_GET['code'] . '&grant_type=authorization_code';
$res = WeChat_request($getAccesstokenUrl);
$openid = $res->openid;
$_SESSION['oauth'] = $openid;
dump($openid);
//获取用户信息存储
} else {
dump('第二次进入');
dump($_SESSION['oauth']);
}
dump('看到我就证明成功啦');
}
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。