Facebook将URL重定向到index.php

时间:2013-08-24 08:41:41

标签: php facebook url facebook-graph-api redirect

的index.php

<?php

//facebook application
$fbconfig['appid']   = "32@@@@@@@@@@";
$fbconfig['secret']  = "ca2dc@@@@@@@@@@@@@";
$fbconfig['baseurl'] = "http://localhost/sbs/fblogin/index.php";
//
if (isset($_GET['request_ids'])) {
    //user comes from invitation
    //track them if you need
}

//facebook user uid
try {
    include_once "src/facebook.php";
}
catch (Exception $o) {
    error_log($o);
}
// Create our Application instance.
$facebook = new Facebook(array(
    'appId' => $fbconfig['appid'],
    'secret' => $fbconfig['secret'],
    'baseurl' => $fbconfig['baseurl'],
    'cookie' => true
));

//Facebook Authentication part
$user = $facebook->getUser();


// We may or may not have this data based 
// on whether the user is logged in.
// If we have a $user id here, it means we know 
// the user is logged into
// Facebook, but we don’t know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.


$loginUrl = $facebook->getLoginUrl(array(

    'scope' => 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,user_photos ,user_work_history'

));

$logoutUrl = $facebook->getLogoutUrl();


if ($user) {
    try {
        // Proceed knowing you have a logged in user who's authenticated.
        $user_profile = $facebook->api('/me');

    }
    catch (FacebookApiException $e) {
        //you should use error_log($e); instead of printing the info on browser
        // d is a debug function defined at the end of this file
        $user = null;
    }
}


//if user is logged in and session is valid.
if ($user) {
    //get user basic description
    $userInfo = $facebook->api("/$user?fields=picture,name,email,gender,birthday");
    //$pic = $facebook->api("/$user/pictures");
    $profile  = json_encode($userInfo);
    $res      = json_decode($profile, true);

    $_SESSION['name']      = $res['name'];
    $_SESSION['email']     = $res['email'];
    $_SESSION['id']        = $res['id'];
    $_SESSION['gender']    = $res['gender'];
    $_SESSION['birthday']  = $res['birthday'];
    $_SESSION['img']       = $res['picture']['data']['url'];
    $_SESSION['auth_type'] = "facebook";

    if (isset($_COOKIE['registration']) && $_COOKIE['registration'] == true) {
        header("location:../sbs/registration.php");
    } else {
        header("location:../sbs/sbs_login.php");
    }
}
?>

我第一次使用Facebook应用程序。我已经在Facebook开发者上制作了应用程序。它运行正常,但它没有在index.php中重定向。我想在此页面中重定向它,因此所有值都存储在会话中,如果已生成cookie,我正在检查它,然后此值将转到registration.php,如果不是,则转到{{1} }。请问任何人都可以告诉重定向网址在哪里?

2 个答案:

答案 0 :(得分:1)

  $loginUrl = $facebook->getLoginUrl(array(
        'baseurl' => $fbconfig['baseurl'],
        'scope' => 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,user_photos ,user_work_history'

    ));

我找到了解决问题的方法。所以这就是解决方案

答案 1 :(得分:0)

$loginUrl = $facebook->getLoginUrl(array(
        'baseurl' => $fbconfig['baseurl'],
        'scope' => 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,user_photos ,user_work_history'