寫了個接入微信的代碼,總是出錯,求教

來源:互聯網
上載者:User
error_reporting(E_ALL);
require "conn.php";
$appid = 'xxxxx';
$redirect_uri=urlencode("http://www.xxxxx.com/weixin/rukou.php/");
$url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=coo#wechat_redirect";
header('location',$url);

$appsecret = 'xxxxx';
$code = $_GET['code'];
$get_token_url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code";

$ch=curl_init();curl_setopt($ch, CURLOPT_URL, $get_token_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);$res=curl_exec($ch);curl_close($ch);  $jsonobj=json_decode($res,ture);

$access_token=$jsonobj['access_token'];
$openid=$jsonobj['openid'];
//檢查資料庫中是否有openid
mysql_select_db("sjk", $dzcon);
mysql_query('set names utf8',$dzcon);
$sqlcha="select id from user where weixinopenid=$openid";
if (is_null(mysql_query($sqlcha, $dzcon))) {

$userids=mysql_query($sqlcha, $dzcon);$userid=mysql_fetch_array($userids);

}else{

$get_user_info_url="https://api.weixin.qq.com/sns/userinfo?access_token=$access_token&openid=$openid&lang=zh_CN";$ch=curl_init();curl_setopt($ch, CURLOPT_URL, $get_token_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);$res=curl_exec($ch);curl_close($ch);

$userobj=json_decode($res,true);
$nickname=$userobj['nickname'];

//date
$date=date("y-m-d h:i:s");

//add data

$sqlzhuce="insert into user (weixinhao,weixinnicheng,zhucetime) values('$openid','$nickname','$date')";
if (!mysql_query($sqlzhuce,$dzcon)) {

echo "提交失敗";die('Error:'.mysql_error());

}
$sqldenglu="select id from user where weixinhao=$openid";
$userids=mysql_query($sqldenglu,$dzcon);
$userid=mysql_fetch_array($userids);
}
session_start();
$_SESSION['userid']=$userid[0];
echo "";
mysql_close($dzcon);

?>

回複內容:

error_reporting(E_ALL);
require "conn.php";
$appid = 'xxxxx';
$redirect_uri=urlencode("http://www.xxxxx.com/weixin/rukou.php/");
$url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=coo#wechat_redirect";
header('location',$url);

$appsecret = 'xxxxx';
$code = $_GET['code'];
$get_token_url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code";

$ch=curl_init();curl_setopt($ch, CURLOPT_URL, $get_token_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);$res=curl_exec($ch);curl_close($ch);  $jsonobj=json_decode($res,ture);

$access_token=$jsonobj['access_token'];
$openid=$jsonobj['openid'];
//檢查資料庫中是否有openid
mysql_select_db("sjk", $dzcon);
mysql_query('set names utf8',$dzcon);
$sqlcha="select id from user where weixinopenid=$openid";
if (is_null(mysql_query($sqlcha, $dzcon))) {

$userids=mysql_query($sqlcha, $dzcon);$userid=mysql_fetch_array($userids);

}else{

$get_user_info_url="https://api.weixin.qq.com/sns/userinfo?access_token=$access_token&openid=$openid&lang=zh_CN";$ch=curl_init();curl_setopt($ch, CURLOPT_URL, $get_token_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);$res=curl_exec($ch);curl_close($ch);

$userobj=json_decode($res,true);
$nickname=$userobj['nickname'];

//date
$date=date("y-m-d h:i:s");

//add data

$sqlzhuce="insert into user (weixinhao,weixinnicheng,zhucetime) values('$openid','$nickname','$date')";
if (!mysql_query($sqlzhuce,$dzcon)) {

echo "提交失敗";die('Error:'.mysql_error());

}
$sqldenglu="select id from user where weixinhao=$openid";
$userids=mysql_query($sqldenglu,$dzcon);
$userid=mysql_fetch_array($userids);
}
session_start();
$_SESSION['userid']=$userid[0];
echo "";
mysql_close($dzcon);

?>

報錯是什麼,放在http://mp.weixin.qq.com/debug/調試下報錯

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.