<?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("===========================\n");
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("===========================\n");
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 以上有数据库...

QQ空间开放平台开发教程-SDK和API的使用的更多相关文章

  1. 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo

    原文:微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建 ...

  2. Senparc.Weixin.MP SDK 微信公众平台开发教程(十七):个性化菜单接口说明

    前不久微信上线了个性化菜单接口,Senparc.Weixin SDK也已经同步更新. 本次更新升级Senparc.Weixin.MP版本到v13.5.2,依赖Senparc.Weixin版本4.5.4 ...

  3. Senparc.Weixin.MP SDK 微信公众平台开发教程(三):微信公众平台开发验证

    要对接微信公众平台的"开发模式",即对接到自己的网站程序,必须在注册成功之后(见Senparc.Weixin.MP SDK 微信公众平台开发教程(一):微信公众平台注册),等待官方 ...

  4. Senparc.Weixin.MP SDK 微信公众平台开发教程(五):使用Senparc.Weixin.MP SDK

    Senparc.Weixin.MP SDK已经涵盖了微信6.x的所有公共API. 整个项目的源代码以及已经编译好的程序集可以在这个项目中获取到:https://github.com/JeffreySu ...

  5. Senparc.Weixin.MP SDK 微信公众平台开发教程(十):多客服接口说明

    微信官方的多客服接口原理是通过用户发送的信息,开发者服务器返回一条指定类型的响应信息,使用户的对话状态切换到官方的多客服状态(持续一段时间),这段时间内用户发送的所有信息都不会到达开发者的服务器,而是 ...

  6. Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明

    这里所说的高级接口是指面向通过认证的服务号开通的高级功能. 高级功能大致可以分类为: 用户接口 分组接口 客服接口(有别于之前介绍的多客服) 群发接口 多媒体接口 二维码接口 模板消息接口(不是所有账 ...

  7. Senparc.Weixin.MP SDK 微信公众平台开发教程(十二):OAuth2.0说明

    紧接上一篇<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>,这里专讲OAuth2.0. 理解OAuth2.0 首先我们通过一张图片来了解一下OAu ...

  8. Senparc.Weixin.MP SDK 微信公众平台开发教程(十五):消息加密

    前不久,微信的企业号使用了强制的消息加密方式,随后公众号也加入了可选的消息加密选项.目前企业号和公众号的加密方式是一致的(格式会有少许差别). 加密设置 进入公众号后台的“开发者中心”,我们可以看到U ...

  9. Senparc.Weixin.MP SDK 微信公众平台开发教程(十六):AccessToken自动管理机制

    在<Senparc.Weixin.MP SDK 微信公众平台开发教程(八):通用接口说明>中,我介绍了获取AccessToken(通用接口)的方法. 在实际的开发过程中,所有的高级接口都需 ...

随机推荐

  1. ali面试点滴

    1.喜欢问原理 最好问2句 回答8句 把相关的知识也加上 最好说一下优势与区别 2.sql优化 分库 分表 ssl https 3.jvm.高并发(事务.原子操作).设计模式(一定要烂熟于心) 4.访 ...

  2. PAT 解题报告 1052. Linked List Sorting (25)

    1052. Linked List Sorting (25) A linked list consists of a series of structures, which are not neces ...

  3. Redis认识

    摘要:认识Redis 1.安装Redis npm install redis 2.Redis使用 var redis = require("redis"), client = re ...

  4. ios app 解决微信扫二维码不能跳转问题

    <script> (function(){ // Setup GA (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i ...

  5. decimal类型保留两位小数

    oj.PriceTop =Math.Round(Convert.ToDecimal(reader["PriceTop"]),2);

  6. PHP判断手机号码是否合法

    <html> <head> <script language="JavaScript"> function checkMobile(input) ...

  7. android 添加背景音乐

    MediaPlayer mediaPlayer=MediaPlayer.create(MainActivity.this,R.raw.qiji); mediaPlayer.start();

  8. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  9. 数据可视化工具zeppelin安装

    介绍 zeppelin主要有以下功能 数据提取 数据发现 数据分析 数据可视化 目前版本(0.5-0.6)之前支持的数据搜索引擎有如下 安装 环境 centOS 6.6 编译准备工作 sudo yum ...

  10. paper 78:sniff抓包程序片段

    #define INTERFACE "eth0"#define MAX_SIZE 65535 int init_raw_socket();int open_promisc(char ...