2011-11-10 7 views
1

Facebook PHP SDK 3.1.1を使用しています。このコードは私の前のホスティングでうまく動作します。私はちょうどBlueHostに移動しました。ユーザーが既にログインしていても、$ userの値は常に0です。

$facebook = new Facebook(array(
    'appId' => FACEBOOK_APIKEY, 
    'secret' => FACEBOOK_SECRET_KEY, 
)); 

$user = $facebook->getUser(); 

これはどうして起こりますか?

+0

は、私はFacebookのSDKについては何も知らないが、私は推測していた場合、私はそれがFacebookで通信していますかどうかを確認言うだろう(多分、カール?)と、そのホストによってブロックされていないことを確認してください。もし私が賭けなければならなかったら、それはブロックされているネットワーク接続だと思います。 – Narcissus

答えて

0

getUser()機能は、グローバル$_REQUEST['signed_request'])を使用しています。

そして、あなたはあなたが最近ホスティングアカウントを切り替えたので、サーバはどちらか$_REQUESTをオフにしたり、何らかの形でそれを上書きするように設定されている可能性があります。

彼らは$_REQUESTに影響を与えるので、あなたは、これらのphp.iniの変数を確認することができます。

  • variables_orderを
  • request_order

を印刷しようとしている、これらの変数がテンプレートにphpinfo();を行う見ますすべての必要な情報を整理してください。

http://php.net/manual/en/function.phpinfo.php

そうしないと、あなたはあなたのホスティングプロバイダに連絡し、あなたがそれを使用できるかどうかを確認するために、グローバル$_REQUESTについて質問する必要がある場合があります。

+0

$ _REQUEST ['signed_request']とは何ですか?私はそれを印刷しましたが、そこには何もありません。 –

+0

そのため、getUser()関数は0を返します。サーバー構成では、$ _REQUESTが無効になっている可能性があります。私はあなたが取るかもしれない手順で私の答えを更新しました。 –

+0

これらの2つの変数はどのようにすべきですか?私のvariables_orderはEGPCSです。 request_orderはありません。 –

関連する問題