• QQ空间开放平台开发教程-SDK和API的使用



    <?php /** * OpenAPI V3 SDK 示例代码,适用于大部分OpenAPI。如果是上传文件类OpenAPI,请参考本SDK包中的“Test_UploadFile.php”文件中的示例代码。 * * @version 3.0.4 * @author open.qq.com * @copyright © 2012, Tencent Corporation. All rights reserved. * @History: * 3.0.4 | coolinchen | 2012-09-07 10:20:12 | initialization */ header('content-type:text/html;charset=utf-8'); //这里加载的编码 require_once 'OpenApiV3.php'; require_once 'mysql.class.php'; //加载数据库类 // 应用基本信息 $appid = 10066x75; //替换成你自己的 $appkey = 'b9e2e397618b2e1af254135731fxxxxx'; //替换成你自己的 // OpenAPI的服务器IP // 最新的API服务器地址请参考wiki文档: http://wiki.open.qq.com/wiki/API3.0%E6%96%87%E6%A1%A3 $server_name = '119.147.19.43'; // 用户的OpenID/OpenKey $openid = $_GET['openid']; //更改为get获取 $openkey = $_GET['openkey']; //更改为get获取 // 所要访问的平台, pf的其他取值参考wiki文档: http://wiki.open.qq.com/wiki/API3.0%E6%96%87%E6%A1%A3 $pf = 'qzone'; $sdk = new OpenApiV3($appid, $appkey); $sdk->setServerName($server_name); $ret = get_user_info($sdk, $openid, $openkey, $pf); //var_dump($ret); if(isset($openid)){ $result = $db->GetOne("select * from qq_user where openid ='{$openid}'"); if(empty($result)){ $data = $db->ExecuteNoneQuery("insert into qq_user (username,openid,openkey,city,avatar) value ('{$ret['nickname']}','{$openid}','{$openkey}','{$ret['city']}','{$ret['figureurl']}.gif')"); //要把openkey保存到数据库,因为openkey只接收一次!openid 每个用户都是唯一的 if($data){ echo "添加成功"; }else{ echo "添加失败"; exit(); } }else{ echo "登陆成功"; } print_r("=========================== "); print_r($ret); $openkey = $db->GetOne("select openkey from qq_user where openid ='{$openid}'"); $openkey = $openkey['openkey']; $islogin = is_setup($sdk, $openid, $openkey, $pf); // print_r("=========================== "); print_r($islogin); } /** * 判断是否添加应用 * 验证用户是否安装了应用 v3/user/is_setup 这个咱们自己写的 * @param object $sdk OpenApiV3 Object * @param string $openid openid * @param string $openkey openkey * @param string $pf 平台 * @return array 好友资料数组 */ function is_setup($sdk, $openid, $openkey, $pf) { $params = array( 'openid' => $openid, 'openkey' => $openkey, 'pf' => $pf, ); $script_name = '/v3/user/is_setup'; return $sdk->api($script_name, $params,'post'); } /** * 获取好友资料 * * @param object $sdk OpenApiV3 Object * @param string $openid openid * @param string $openkey openkey * @param string $pf 平台 * @return array 好友资料数组 */ function get_user_info($sdk, $openid, $openkey, $pf) { $params = array( 'openid' => $openid, 'openkey' => $openkey, 'pf' => $pf, ); $script_name = '/v3/user/get_info'; return $sdk->api($script_name, $params,'post'); }

     今天闲着没事给大家说说腾讯开放平台我用的是OpenAPI V3.0的PHPSdk,大家可以下载一下,现在就简单的说明一下使用因为我也没有应需求只是看一下应该怎么使用而已,大家从官方下载Sdk,然后在应用 管理中心-应用信息管理-平台信息管理然后输入自己的应用的url我的是http://www.lingphp.com/index.php作为调试 那大家简单来学一下吧!把下载的Test_OpenApiV3.php重新命名为index.php

    -- ----------------------------
    -- Table structure for `qq_user`
    -- ----------------------------
    DROP TABLE IF EXISTS `qq_user`;
    CREATE TABLE `qq_user` (
      `id` int(8) unsigned NOT NULL AUTO_INCREMENT,
      `username` varchar(250) NOT NULL,
      `openid` varchar(250) NOT NULL,
      `openkey` varchar(250) NOT NULL,
      `city` varchar(50) DEFAULT NULL,
      `avatar` varchar(300) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8
    

    以上有数据库...
  • 相关阅读:
    MongoDB慢查询性能分析
    redis的LRU算法(二)
    Skynet服务热点火焰图分析
    内存爆灯
    时区问题
    与机器共生
    bug狩猎
    Lesson Learned
    下划线引起的血案
    Intel的CPU漏洞:Spectre
  • 原文地址:https://www.cnblogs.com/phpxuetang/p/5132956.html
Copyright © 2020-2023  润新知