0

fb connect と Web サイトの統合を学ぼうとしています。そこで私は次のような問題に直面しています。

( http://www.mydomain.com/exp/login.php )から facebook 情報を送信した後、次のようにリダイレクト uri で process_data.php を呼び出しています。

<fb:registration fields="[
{'name':'name'},
{'name':'email'},
{'name':'who', 'description':'additional info',     'type':'text'}]"
redirect-uri="http://www.mydomain.com/exp/process_data.php"
</fb:registration>

次に、process_data.php で、次のことを行います。

if ($_REQUEST) {
$response = parse_signed_request($_REQUEST['signed_request'], 
                               $appSect);

if($response){  
    $_SESSION['facebook_data'] = $response;
    header('Location: '.$redirect_url); //http://www.mydomain.com/exp/home.php
} else {
echo '$_REQUEST is empty';
}

最後に、home.php で、

<?php
  session_start();
  if(isset($_SESSION['facebook_data'])){
    //do something with data
  {

?>

しかし、home.php でこのコードにヒットすることはありません。

ホスティングと何か関係がありますか?または私は何か間違ったことをしていますか?

前もって感謝します、

カスン

4

1 に答える 1

0

リダイレクトするときは、次のことを試してください。

 header("Location: newpage.php?PHPSESSID=".session­_id());

その後:

session_id($_GET['PHPSESSID']); 
session_start();

私の知る限り、セッション変数を設定してすぐにリダイレクトすると問題が発生しますが、これは常に機能するとは限りません。

URL ではなく Cookie にセッション ID を保存する方がよいことに注意してください。

exitまたは、リダイレクトの直後に使用してみてください。

header("Location: newpage.php");
exit;
于 2013-04-12T14:57:08.743 に答える