php - Something wrong, with my facebook graph URL -



php - Something wrong, with my facebook graph URL -

i'm doing wrong when trying access info facebook graph api, here code of page:

it fetches need other users email address, understand need extended permissions have requested seen in code below.

require 'src/facebook.php'; $app_id = "211665122244023"; $canvas_page = "http://apps.facebook.com/midcitymafia/"; $auth_url = "https://www.facebook.com/dialog/oauth?client_id=" . $app_id . "&redirect_uri=" . urlencode($canvas_page) . "&scope=email,publish_actions"; $signed_request = $_request["signed_request"]; list($encoded_sig, $payload) = explode('.', $signed_request, 2); $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true); $user_id = $data["user_id"]; if (empty($data["user_id"])) { echo("<script> top.location.href='" . $auth_url . "'</script>"); } else { $graph1 = file_get_contents ("https://graph.facebook.com/".$user_id . "/?accesstoken=" . $data["oauth_token"]); $graph=json_decode($graph1,true); } $userid = $user_id; $username = $graph['name']; $usergender = $graph['gender']; $useremail = $graph['email']; ?> <br> <?php echo 'id: ' . $userid; ?> <br> <?php echo 'name: ' . $username; ?> <br> <?php echo 'gender: ' . $usergender; ?> <br> <?php echo 'email: ' . $useremail; ?>

i dumped $graph variable array see info held, result:

array(7) { ["id"]=> string(10) "1469088864" ["name"]=> string(10) "jack brown" ["first_name"]=> string(4) "jack" ["last_name"]=> string(5) "brown" ["username"]=> string(11) "thebestjack" ["gender"]=> string(4) "male" ["locale"]=> string(5) "en_gb" }

it doesn't contain email address there problem access token / using access token access graph.

when go authorised apps on facebook business relationship settings under app says "this apps needs email address "blahblah@yahoo.co.uk"

you have $_request["signed_request"] request, doesn't matter if user authorized app or not. have users not logged in facebook @ all.

use php-sdk retrieve user's profile http://developers.facebook.com/docs/reference/php/facebook-api/

<?php require_once('php-sdk/facebook.php'); $config = array( 'appid' => '211665122244023', 'secret' => 'your_app_secret', ); $facebook = new facebook($config); $user_id = $facebook->getuser(); $login_url = $facebook->getloginurl(array( scope => 'email,publish_actions', redirect_uri => $canvas_page,)); if($user_id) { seek { $user_profile = $facebook->api('/' . $user_id,'get'); $userid = $user_id; $username = $user_profile['name']; $usergender = $user_profile['gender']; $useremail = $user_profile['email']; } catch(facebookapiexception $e) { echo("<script> top.location.href='" . $login_url . "'</script>"); error_log($e->gettype()); error_log($e->getmessage()); } } else { echo("<script> top.location.href='" . $login_url . "'</script>"); } ?> <?php if (isset($useremail)) : ?> <br> <?php echo 'id: ' . $userid; ?> <br> <?php echo 'name: ' . $username; ?> <br> <?php echo 'gender: ' . $usergender; ?> <br> <?php echo 'email: ' . $useremail; ?> <?php endif; ?>

php facebook facebook-graph-api access-token facebook-apps

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -