最近、単純なアプリを作成して何か新しいことを学びたいと思ったので、PHP の学習を始めました。しかし今、私は Facebook の統合に苦労しています。
いくつか問題があります。
パーマを取得するために href をクリックすると、何も起こりません。表示ポップアップ パラメータが設定されている場合でも、新しいタブで開く必要があります。(アクセス トークンで iframe を使用する必要がありますか?)
電子メールの許可を求めていますが、signed_request にはそのような情報が含まれていません。
私はPHPの完全な初心者であることを覚えておいてください。ありがとうデビッド
これが私のコードです:
//call facebook extended perms.
$loginUrl = $facebook->getLoginUrl($params);
$params = array(
'client_id' => 'AppID',
'scope' => 'email, publish_stream',
);
$loginUrl = $facebook->getLoginUrl($params);
echo ('a href="'.$loginUrl.'" perms a');
ここに signed_request があります
//Get the signed request
$srq = $_REQUEST['signed_request'];
function parse_signed_request($srq) {
list($encoded_sig, $payload) = explode('.', $srq, 2);
// decode the data
$sig = base64_url_decode($encoded_sig);
$data = json_decode(base64_url_decode($payload), true);
print_r ($data);
}
function base64_url_decode($input) {
return (base64_decode(strtr($input, '-_', '+/')));
}
//print the signed request for "debug?"
parse_signed_request($srq);`
パーマをかけたときの出力は次のとおりです。
Array
(
[algorithm] => HMAC-SHA256
[expires] => 1361822400
[issued_at] => 1361817488
[oauth_token] => loooooong token
[page] => Array
(
[id] => 146945218690274
[liked] => 1
[admin] => 1
)
[user] => Array
(
[country] => cz
[locale] => cs_CZ
[age] => Array
(
[min] => 18
[max] => 20
)
)
[user_id] => deleted
)