欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

微信判定用户是否关注

程序员文章站 2022-03-17 13:43:03
...
跳至
	if (empty($openid)){
			if (empty($_REQUEST["code"])) {
				$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$APPID."&redirect_uri=".$redirect_url."&response_type=code&scope=snsapi_base&state=blinq#wechat_redirect";
				echo $this->assign('url', $url)->fetch('redirect');
				return;
			}else{
				$code = $_REQUEST['code'];
			
				$APPID = C("APPID");
				$SECRET = C("SECRET");
				$accessTokenUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" . $APPID . "&secret=" . $SECRET . "&code=$code&grant_type=authorization_code";
				$ch = curl_init($accessTokenUrl);
				curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
				curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
				curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1; rv:21.0) Gecko/20100101 Firefox/21.0');
				curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
				$info = curl_exec($ch);
				$dataJson = json_decode($info, true);
				$openid = $dataJson['openid'];
				$userdata = $table->get_subscribe_res($openid);
				$subscribed = $userdata['data']['subscribed'];
				if($subscribed){
					session("openid", $openid);	
				
				}else{
					$url="http://www.oschina.net/code/step1?catalog=";
					echo $this->assign('url', $url)->fetch('redirect');
					return;
				}
			}
		}