2013-08-02 3 views
0

У меня есть пользовательская система, в которой я храню идентификатор пользователя в $_SESSION['uid'], и пользователь может просматривать настройки своего аккаунта. Однако недавно я добавил возможность связать свою учетную запись Twitter ... это где он становится нечетным.Сессия не сохраняется после перенаправления заголовка

У меня есть страница запроса твиттер так:

session_start(); 
require("twitteroauth/twitteroauth.php"); 

// The TwitterOAuth instance 
$twitteroauth = new TwitterOAuth('***', '***'); 
// Requesting authentication tokens, the parameter is the URL we will be redirected to 
$request_token = $twitteroauth->getRequestToken('http://livepierced.com/reg_twit.php'); 

// Saving them into the session 
$_SESSION['oauth_token'] = $request_token['oauth_token']; 
$_SESSION['oauth_token_secret'] = $request_token['oauth_token_secret']; 

// If everything goes well.. 
if($twitteroauth->http_code==200){ 
    // Let's generate the URL and redirect 
    $url = $twitteroauth->getAuthorizeURL($request_token['oauth_token']); 
    //var_dump($url); 
    header('Location: '. $url); 
} else { 
    // It's a bad idea to kill the script, but we've got to know when there's an error. 
    //die('Something wrong happened.'); 
} 

Я вар дамп сессии на данный момент, и получить UID, AuthToken и AuthTokenSecret

Однако, как только я нажал Авторизовать на щебечет сторона Я послан на эту страницу:

session_start(); 
require("twitteroauth/twitteroauth.php"); 
if(!empty($_GET['oauth_verifier']) && !empty($_SESSION['oauth_token']) && !empty($_SESSION['oauth_token_secret'])){ 
    // We've got everything we need 
    echo "<h1>TOKEN GOOD BRO!</h1>"; 

} else { 
    // Something's missing, go back to square 1 
    //var_dump($_REQUEST); 
    //header('Location: req_twit.php'); 
} 

Однако теперь моя сессия эфир был разрушен, или га s начал новый сеанс, потому что var dumping $ _SESSION дает мне только идентификатор сеанса

ответ

0

Когда происходит перенаправление заголовка, происходит ли переход на другой URL-адрес или поддомен? Например, вы начинаете с mywebsite.com и заканчиваете сайт www.mywebsite.com?

Я никогда не использовал twitter api, но это моя первая мысль.

Смежные вопросы