本文整理汇总了PHP中QC类的典型用法代码示例。如果您正苦于以下问题:PHP QC类的具体用法?PHP QC怎么用?PHP QC使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了QC类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: callback
/**
* 返回登录
*/
public function callback()
{
require_once COMMON_LIB_PATH . "QqConnect/API/qqConnectAPI.php";
$qc = new QC();
$callback = $qc->qq_callback();
$openid = $qc->get_openid();
$user = K("user")->field("uid,username,password,qqau,userlock,uuid,usergroup")->where(array("qqau" => $openid))->find();
session("qqau", $openid);
if (empty($user["qqau"])) {
//首次登录或没有绑定账号
$qc = new QC($callback, $openid);
$arr = $qc->get_user_info();
session("UserInfo", $arr["nickname"]);
go("Passport/Qqlogin/index");
} elseif ($user["qqau"] == $openid) {
//数据库比对正确
if ($user["userlock"] == 1) {
$this->error("您已经被锁定,请联系管理员!");
}
//$this->eve_exp($user["uid"]);
$loginData = array("logintime" => time(), "loginip" => ip::getClientIp(), "qqau" => $openid);
M("user")->where(array("uid" => $user["uid"]))->save($loginData);
// p($_POST);
session("username", $user["username"]);
session("uid", $user["uid"]);
session("uuid", $user["uuid"]);
session("usergroup", $user["usergroup"]);
$this->success("登录成功!正在跳转...", U(__WEB__));
}
}
示例2: callbackAction
public function callbackAction()
{
$mediaqqmodel = new Media_QQModel($this->_basemodel, $this->_qqparam);
$app_id = isset($_REQUEST['app_id']) ? trim($_REQUEST['app_id']) : '69948denMVMoBujYGLSFGUHbkvP7E3';
$mediaqq = $mediaqqmodel->getApp($app_id);
$APPID = $mediaqq['APPID'] && $mediaqq['APPKEY'] ? $mediaqq['APPID'] : $mediaqq['def_APPID'];
$APPKEY = $mediaqq['APPID'] && $mediaqq['APPKEY'] ? $mediaqq['APPKEY'] : $mediaqq['def_APPKEY'];
$redirect_uri = $this->_qqparam['redirect_uri'] . '?app_id=' . $mediaqq['app_id'];
$state = md5($mediaqq['app_key']);
$qcinit = new QQAPI_YafQQConnetAPI();
$qc = new QC();
$access_token = $qc->qq_callback($APPID, $redirect_uri, $APPKEY);
echo $access_token . '----------';
$openid = $qc->get_openid($access_token);
echo $openid . '---------';
$qqUser = $qc->my_get_userinfo($access_token, $openid, $APPID);
if ($qqUser && $qqUser->nickname) {
$media_user_id = $mediaqqmodel->saveUser($openid, $qqUser, $APPID);
if ($media_user_id) {
$usertokentime = date('Y-m-d H:i:s', time() + Yaf_Application::app()->getConfig()->application->usertokentime);
$login_token = $mediaqqmodel->saveAccessToken($app_id, $access_token, $openid, $media_user_id, $usertokentime);
if ($login_token) {
$url = $mediaqq['token_url'];
$concat = '&';
if (strpos($url, '?') === false) {
$concat = '?';
}
$url .= $concat . "token={$login_token}";
header("Location:{$url}");
}
}
}
exit;
}
示例3: callback
public function callback()
{
es_session::start();
require_once APP_ROOT_PATH . "system/api_login/qqv2/qqConnectAPI.php";
$qc = new QC();
$access_token = $qc->qq_callback();
$openid = $qc->get_openid();
$use_info_keysArr = array("access_token" => $access_token, "openid" => $openid, "oauth_consumer_key" => $this->api['config']['app_key']);
$use_info_url = "https://graph.qq.com/user/get_user_info";
$graph_use_info_url = $qc->urlUtils->combineURL($use_info_url, $use_info_keysArr);
$response = $qc->urlUtils->get_contents($graph_use_info_url);
$arr = array();
$arr = json_decode($response, true);
$msg['field'] = 'qq_id';
$msg['id'] = $openid;
$msg['name'] = $arr["nickname"];
es_session::set("api_user_info", $msg);
$user_data = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where qq_id = '" . $openid . "' and qq_id <> '' and is_effect=1 and is_delete=0");
if ($user_data) {
$user_current_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where id = " . intval($user_data['group_id']));
$user_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where score <=" . intval($user_data['score']) . " order by score desc");
if ($user_current_group['score'] < $user_group['score']) {
$user_data['group_id'] = intval($user_group['id']);
}
es_session::set("user_info", $user_data);
$GLOBALS['db']->query("update " . DB_PREFIX . "user set login_ip = '" . get_client_ip() . "',login_time= " . TIME_UTC . ",group_id=" . intval($user_data['group_id']) . " where id =" . $user_data['id']);
es_session::delete("api_user_info");
app_recirect_preview();
} else {
$this->create_user();
app_redirect(APP_ROOT . "/");
}
}
示例4: callback
public function callback()
{
require 'QQ/API/qqConnectAPI.php';
//引进qqapi 接口
$qc = new \QC();
$acs = $qc->qq_callback();
//获取access-token 和openid
$oid = $qc->get_openid();
$qc = new \QC($acs, $oid);
$uinfo = $qc->get_user_info();
//获取用户信息
$user = M('user');
$list = $user->where("openid='" . $oid . "' and status = 1")->find();
if ($list) {
session('userid', $list['id']);
session('username', $list['nickname']);
session('userphone', $list['mobile']);
session('userimg', $list['headpic']);
//var_dump($list);die();
echo "<script>window.close();window.opener.location.reload()</script>";
exit;
//$this->redirect('Index/index', '', 0, '页面跳转中...');
} else {
session('openid', $oid);
session('uinfo', $uinfo);
session('sign', array('name' => 'QQ账号', 'code' => 1));
echo "<script>window.close();window.opener.location.href='" . U('User/threepartlogin') . "'</script>";
exit;
}
}
示例5: qqcallback
public function qqcallback()
{
Vendor('Oauth.QC#class');
$qc = new \QC();
$token = $qc->qq_callback();
$openid = $qc->get_openid();
if (!$token || !$openid) {
$this->error('操作失败');
}
// 重新实例化 QC类
$qc = new \QC($token, $openid);
$uinfo = $qc->get_user_info();
$this->user_model = D('user');
$user = $this->user_model->field('id,email,password')->where(array('qq_token' => $token, 'qq_openid' => $openid))->find();
// echo $this->user_model->getLastSql();
if ($user['id'] > 0) {
// 登录用户
if ($this->user_model->login($user['id'], $user['email'], $user['password'])) {
//TODO:跳转到登录前页面
$this->success('登录成功!', session('rebackurl'));
} else {
$this->error($model->getError());
}
} else {
session('avatar', $uinfo['figureurl_qq_2']);
session('openid', $openid);
session('token', $token);
session('uname', $uinfo['nickname']);
session('oatype', 'qq_');
//print_r($uinfo);
$this->redirect('join');
}
}
示例6: callback
public function callback()
{
vendor('QQApi.qqConnectAPI');
$qc = new \QC();
$access_token = $qc->qq_callback();
$openid = $qc->get_openid();
$data['data'] = serialize(array('access_token' => $access_token, 'openid' => $openid));
M('post_log')->add($data);
//注册会员信息
//查看此openid是否存在
$map['username'] = $openid;
$detail = D('User')->where($map)->find();
$userid = $detail['userid'];
$nickname = $detail['nickname'];
if (!$detail) {
//获取用户信息
$arr = $qc->get_user_info();
M('post_log')->add(array('data' => serialize($arr)));
$info['username'] = $openid;
$info['nickname'] = $nickname = $arr['nickname'];
$userid = D('User')->add($info);
}
if ($userid) {
//保存session
session('userid', $userid);
//保存cookie用户信息
cookie('userid', $userid);
cookie('nickname', $nickname);
cookie('userid', $userid);
redirect(U('Shenma/user'));
}
/* $arr = $qc->get_user_info();
var_dump($arr);exit; */
}
示例7: qqcallback
public function qqcallback()
{
require_once "./QQ/API/qqConnectAPI.php";
$qc = new \QC();
echo $qc->qq_callback();
echo $qc->get_openid();
var_dump($qc);
}
示例8: getUserInfo
public function getUserInfo()
{
require_once dirname(__FILE__) . "/API/qqConnectAPI.php";
$qc = new QC(ISession::get('access_token'), ISession::get('openid'), $this->apiId);
$arr = $qc->get_user_info();
$userInfo['id'] = ISession::get('openid');
$userInfo['name'] = isset($arr['nickname']) ? $arr['nickname'] : '';
return $userInfo;
}
示例9: login
public function login()
{
define('QQ_LOGIN_APPID', $this->config->get('qq_login_appid'));
define('QQ_LOGIN_APPKEY', $this->config->get('qq_login_appkey'));
define('QQ_CALLBACK_URI', HTTP_SERVER . 'catalog/controller/api/qq_callback.php');
require_once DIR_SYSTEM . 'library/qq/qqConnectAPI.php';
$qc = new QC();
$qc->qq_login();
}
示例10: qq_callback
public function qq_callback()
{
require_once "./public/Library/qqAuth/qqConnectAPI.php";
$qc = new QC();
//echo $qc->qq_callback();
$openid = $qc->get_openid();
$arr = $qc->get_user_info();
$nickname = $arr["nickname"];
//TODO 注册登录操作
}
示例11: actionQq_callback
/**
* QQ回调地址
*
*/
public function actionQq_callback()
{
require_once Yii::getPathOfAlias('ext') . "/OAuth/qq/qqConnectAPI.php";
$qc = new QC();
$access_token = $qc->qq_callback();
$openid = $qc->get_openid();
$qc = new QC($access_token, $openid);
$user_info = $qc->get_user_info();
//查看是否已绑定
$bind = OAuthQQ::model()->findByPk($openid);
//数据
$data = array('type' => 'qq', 'access_token' => $access_token, 'openid' => $openid, 'uid' => $bind ? $bind->uid : 0, 'username' => $user_info['nickname'], 'avatar' => $user_info['figureurl_2']);
//绑定注册
$this->bind_register($bind, $data);
}
示例12: QQ_callback
function QQ_callback()
{
$cb_arr = array();
$qc = new QC();
$access_token = $qc->qq_callback();
//DE89B12F418C136D96F62898CBC4705E
$openid = $qc->get_openid();
//B8C02925F80EE3B4462B86E7868DAC1D
//echo $access_token;
//echo $openid;
$qc1 = new QC($access_token, $openid);
$userinfo_arr = $qc1->get_user_info();
$nickname = $userinfo_arr["nickname"];
$cb_arr = array('access_token' => $access_token, 'openid' => $openid, 'nick' => $nickname);
return $cb_arr;
}
示例13: callback
public function callback()
{
global_run();
require_once APP_ROOT_PATH . "system/api_login/qqv2/qqConnectAPI.php";
$qc = new QC();
$access_token = $qc->qq_callback();
$openid = $qc->get_openid();
$use_info_keysArr = array("access_token" => $access_token, "openid" => $openid, "oauth_consumer_key" => $this->api['config']['app_key']);
$use_info_url = "https://graph.qq.com/user/get_user_info";
$graph_use_info_url = $qc->urlUtils->combineURL($use_info_url, $use_info_keysArr);
$response = $qc->urlUtils->get_contents($graph_use_info_url);
if ($response['ret'] != 0) {
showErr("授权失败,错误信息:" . $response['msg']);
die;
}
$response = json_decode($response, 1);
$msg['field'] = 'qqv2_id';
$msg['id'] = $openid;
$msg['name'] = $response["nickname"];
es_session::set("api_user_info", $msg);
$user_data = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where qqv2_id = '" . $openid . "' and qqv2_id <> '' and is_effect=1 and is_delete=0");
$is_bind = intval(es_session::get("is_bind"));
if ($user_data) {
$GLOBALS['db']->query("update " . DB_PREFIX . "user set qq_token = '" . $access_token . "',login_ip = '" . CLIENT_IP . "',login_time= " . NOW_TIME . " where id =" . $user_data['id']);
es_session::delete("api_user_info");
if ($is_bind) {
if (intval($user_data['id']) != intval($GLOBALS['user_info']['id'])) {
showErr("该帐号已经被别的会员绑定过,请直接用帐号登录", 0, url("index", "uc_account"));
} else {
require_once APP_ROOT_PATH . "system/model/user.php";
load_user($user_data['id'], true);
es_session::set("user_info", $user_data);
app_redirect(url("index", "uc_account"));
}
} else {
require_once APP_ROOT_PATH . "system/model/user.php";
auto_do_login_user($user_data['user_name'], $user_data['user_pwd'], $from_cookie = false);
app_redirect(url("index", "index"));
}
} elseif ($is_bind == 1 && $GLOBALS['user_info']) {
//当有用户身份且要求绑定时
$GLOBALS['db']->query("update " . DB_PREFIX . "user set qqv2_id= '" . $msg['id'] . "', qq_token ='" . $access_token . "' where id =" . $GLOBALS['user_info']['id']);
require_once APP_ROOT_PATH . "system/model/user.php";
load_user($GLOBALS['user_info']['id'], true);
app_redirect(url("index", "uc_account"));
} else {
$user_info = $this->create_user();
require_once APP_ROOT_PATH . "system/model/user.php";
auto_do_login_user($user_info['user_name'], $user_info['user_pwd'], $from_cookie = false);
app_redirect(url("index", "index"));
}
}
示例14: session_start
session_start();
function randusname($name)
{
$nickname = $name . '_' . rand(1000, 9999);
return $nickname;
}
require_once "../../../include/conn.php";
require_once "../../../include/myfunction.php";
require_once "../API/qqConnectAPI.php";
require_once "../../../config.inc.php";
require_once "../../../uc_client/client.php";
$siteweb = GetSiteconfig();
$qc = new QC();
$qqcallback = $qc->qq_callback();
$qqid = $qc->get_openid();
$qc = new QC($qqcallback, $qqid);
$arr = $qc->get_user_info();
if (!empty($qqcallback)) {
$sql = "select * from user where qq_ua='{$qqid}'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
$usxx = mysql_fetch_assoc($result);
if (!empty($_SESSION['usnamese']) && !empty($usxx['qq_ua'])) {
echo "<script>location='/u'</script>";
exit;
}
if ($count) {
if (time() > $usxx['Pingbi']) {
$_SESSION['usnamese'] = $usxx['name'];
$_SESSION['usidse'] = $usxx['id'];
$_SESSION['shua'] = 1;
示例15: elseif
$template = 'user_edit.html';
} elseif ($_view == 'password_edit') {
$template = 'user_edit_password.html';
} elseif ($_view == 'activate_email') {
user::activate_email($_GET['key']);
$_notice = array('title' => '邮箱激活成功', 'content' => '现在可以设置一个抓取计划或者复制别人的抓取计划', 'button' => '点击这里开始', 'url' => '/');
$template = 'notice.html';
} elseif ($_view == 'weibo_login') {
include 'saetv2.ex.class.php';
$sae_oauth = new SaeTOAuthV2(WB_AKEY, WB_SKEY);
$login_url = $sae_oauth->getAuthorizeURL(WB_CALLBACK_URL);
header("Location:{$login_url}");
exit;
} elseif ($_view == 'qq_login') {
include INCLUDES_PATH . 'qqapi/qqConnectAPI.php';
$qc = new QC();
$qc->qq_login();
exit;
}
if (isset($_POST['email']) || isset($_POST['password'])) {
if (isset($_POST['email'])) {
if (!$_POST['email_notify']) {
$_POST['email_notify'] = 'off';
}
}
if (isset($_POST['app_notify_pin'])) {
if (!$_POST['app_notify']) {
$_POST['app_notify'] = 'off';
}
}
$result = user::update($_POST);