2010-08-20 161 views
6

IM使用Twitter的OAuth的类连接到Twitter的在这里找到:Twitter的OAuth的 - 存储令牌在MySQL

目前剧本只使用提供的令牌,但犯规它们存储在数据库中,我想脚本做这个。

这是我目前在我的回调脚本:

<?php 
/** 
* @file 
* Take the user when they return from Twitter. Get access tokens. 
* Verify credentials and redirect to based on response from Twitter. 
*/ 

/* Start session and load lib */ 
session_start(); 
require_once('twitteroauth/twitteroauth.php'); 
require_once('config.php'); 

/* If the oauth_token is old redirect to the connect page. */ 
if (isset($_REQUEST['oauth_token']) && $_SESSION['oauth_token'] !== $_REQUEST['oauth_token']) { 
    $_SESSION['oauth_status'] = 'oldtoken'; 
    header('Location: ./clearsessions.php'); 
} 

/* Create TwitteroAuth object with app key/secret and token key/secret from default phase */ 
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']); 

/* Request access tokens from twitter */ 
$access_token = $connection->getAccessToken($_REQUEST['oauth_verifier']); 

/* Save the access tokens. Normally these would be saved in a database for future use. */ 
$_SESSION['access_token'] = $access_token; 

/* Remove no longer needed request tokens */ 
unset($_SESSION['oauth_token']); 
unset($_SESSION['oauth_token_secret']); 

/* If HTTP response is 200 continue otherwise send to connect page to retry */ 
if (200 == $connection->http_code) { 
    /* The user has been verified and the access tokens can be saved for future use */ 
    $_SESSION['status'] = 'verified'; 
    header('Location: ./index.php'); 
} else { 
    /* Save HTTP status for error dialog on connnect page.*/ 
    header('Location: ./clearsessions.php'); 
} 

我如何保存令牌到MySQL,在什么脚本的一部分,我会得到令牌?

回答

6

您需要的数据存储在$_SESSION['access_token'] = $access_token;变量中。

尝试print_r($access_token);

内部的变量,你会发现:

screen_name 
user_id 
oauth_token 
oauth_token_secret 

其中可用于您的应用程序和存储在数据库中。