<!doctype html> <html> <head> <meta charset="utf-8"> <title>Event meeting check-in</title> </head> <body> <?php function curlPost($url,$data=""){ $ch = curl_init(); $opt = array( CURLOPT_URL => $url, CURLOPT_HEADER => 0, CURLOPT_POST => 1, CURLOPT_POSTFIELDS => $data, CURLOPT_RETURNTRANSFER => 1, CURLOPT_TIMEOUT => 20 ); $ssl = substr($url,0,8) == "https://" ? TRUE : FALSE; if ($ssl){ $opt[CURLOPT_SSL_VERIFYHOST] = 2; $opt[CURLOPT_SSL_VERIFYPEER] = FALSE; //FALSE returns an object, TRUE returns an array } curl_setopt_array($ch,$opt); $data = curl_exec($ch); curl_close($ch); return $data; } function accessToken() { $tokenFile = "./access_token.txt"; $data = json_decode(file_get_contents($tokenFile)); if ($data->expire_time < time() or !$data->expire_time){ $appid = "Replace with your appid"; $appsecret = "Replace with your appid"; $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret"; $res = getJson($url); $access_token = $res['access_token']; if($access_token) { $data_new['expire_time'] = time() + 7000; $data_new['access_token'] = $access_token; $fp = fopen($tokenFile, "w"); fwrite($fp, json_encode($data_new)); fclose($fp); } } else { $access_token = $data->access_token; } return $access_token; } function getJson($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($ch); curl_close($ch); return json_decode($output,TRUE); //return array json } $ACCESS_TOKEN=accessToken(); $Url="https://api.weixin.qq.com/shakearound/user/getshakeinfo?access_token=$ACCESS_TOKEN"; $ticket=$_GET["ticket"]; $data='{"ticket":"'.$ticket.'","need_poi":0}'; $res = curlPost($Url,$data); $openid=json_decode($res)->data->openid; $fl=$_GET["fl"]; $url = "Replace with your URL/qd.asp?fl=". $fl ."&wxid=".$openid; echo "<script language='javascript' type='text/javascript'>"; echo "window.location.href='$url'"; echo "</script>"; ?> </body> </html>