解决方案 »

  1.   

    与yii没关
    首先去facebook开一个app,得到app id与 app_secret
    然后下载facebook api 的sdk
    之后按文档做就可以了。
    https://developers.facebook.com/docs/reference/php/4.0.0
      

  2.   

    我看了facebook php 文档 ,身份验证这一块我不懂,能不能指定下我 FacebookRedirectLoginHelper是在我的应用程序中使用吗?FacebookSession获取也是在我的应用程序中使用吗? (实习生)
      

  3.   

    facebook session获取 sdk会做,不用自己写。sdk应该包含以下三个文件
    base_facebook.php
    facebook.php
    fb_ca_chain_bundle.crt
    <?php
    include "facebook.php";
    $oFacebook = new Facebook(array(
    'appId' => 'xxx',
    'secret' => 'xxx',
    'cookie' => true,
    'fileUpload' => true
    ));$user = $oFacebook->getUser();
    if($user){
    try{
    $user_profile = $oFacebook->api('/'.$user); //判斷是否獲取到用戶信息
    } catch (FacebookApiException $e){
    $user = null;
    }
    if($user){
    return $user; //返回用戶id
    }
    }else{
    $loginUrl = $oFacebook->getLoginUrl(array(
    'scope' => 'xxxx', // 这里填权限,要获取的东西 例如 publish_stream,user_photos,email,offline_access,user_birthday,user_notes
    'redirect_uri' => 'xxx'   // 这里填在facebook login后要回跳的地址
    ));
    return $loginUrl;
    }
    ?>
    得到$loginUrl后,跳转到这个地址
    当facebook 登入成功后,会返回到 redirect_uri这个地址,并把参数带回redirect_uri php可以这样写<?php
      $userid = $oFacebook->getUser();  $facebook_accesstoken = $facebook->getAccessToken();
      echo $facebook_accesstoken.'<br>'; try{
    $param = array(
    'method' => 'fql.query',
    'query' => "SELECT 'uid,name,pic,pic_square,email,sex,birthday_date' FROM user WHERE uid='".$userid."'",
    'access_token' => $facebook_accesstoken
    );
    $result = oFacebook->api($param);
    } catch(FacebookApiException $e){
    return array();
    } if($result){
    $user_profile = array();
    foreach($result[0] as $key=>$val){
    $user_profile[$key] = $val;
    }
    return $user_profile;
    }else{
    return array();
    }
    print_r($result);
    ?>
    剩下的就是自己服务器那边的操作了。
      

  4.   

    facebook API 提示用户没有授权第三方登录?
      

  5.   

    你開app時,domain有寫對嗎?
    要domain匹配才可以的。
      

  6.   

    domain 写的是我的网站名称(未上线的)http://wenjing.comfacebook API 需要配置那几个地方? 我配置的有1:app id                  2.app secret                   3. display name(khyangringwow)                  4.namespace(khyangringwow)               app domians(wenjing.com)       5.canvas page (http://apps.facebook.com/khyangwow)     6.canvas url(http://wenjing.com/app/login/fb/ 我在项目中的回调url也是这个)            7.valid oauth redirect urls(http://wenjing.com/app/login/fb)