2012-04-23 18 views
0

私はCodeignitorを使用しています。facebookユーザー認証php

私は自分のアプリケーションを通じてFacebookに投稿したいと思います。

問題は、私が試したものをここに

...今私はAJAXを通じて関数を呼び出しています

function postTofb() 
{ 


require_once("pocket/fb/facebook.php"); 
     $fbconfig = array(); 
     $fbconfig['appId'] = 'app_id'; 
     $fbconfig['secret'] = 'app_secret'; 
     $fbconfig['baseurl'] = "site_name"; 

       $facebook = new Facebook($fbconfig); 
     $user = $facebook->getUser(); 


       if($user) 
      { 
      try { 

       $user_profile = $facebook->api('/me'); 
      $ID = $user_profile['id']; 
      echo $ID; 

       } 
     catch (FacebookApiException $e) 
     { 

     echo $e; 

      } 


     } 
     else 
     { 

     //else starts 

      $loginUrl = $facebook->getLoginUrl(
      array(
       'scope'=> 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown', 
       'redirect_uri'=>$fbconfig['baseurl'] 
      ) 
     ); 
    $data["status"] = FALSE; 
    $data["url"] = $loginUrl; 
    echo json_encode($data); 
    //else ends 
     } 
    } 

...。それは常にあなたがログインしていません返すですがFALSEと、それは常に応答...私はelse部分を意味します。私はいくつかのポイントを逃したよう

{"status":false,"url":"https:\/\/www.facebook.com\/dialog\/oauth?client_id=281255791959236&redirect_uri=http%3A%2F%2Fwww.MY_SITE_NAME.com%2F&state=3d19a96f48022344222f518609f30537&scope=email%2Coffline_access%2Cpublish_stream%2Cuser_birthday%2Cuser_location%2Cuser_work_history%2Cuser_about_me%2Cuser_hometown"} 

が見え取得しています何ここ

...私を助けてください..

はありがとうございます。

答えて

0

オフラインアクセスはfacebookでサポートされなくなりましたが、できることは最大60日間のトークンを生成することだけです。

+0

私はaccessTockenを入手する必要があります。 – Red

+0

まず最初にオフラインでアクセスせずに試してみてください。 – JonathanRomer

+0

ええと...私はトークンを生成できますか? – Red

0

問題は、私は許可パラメータの一部を取り出して、それが働いたLoginUrl

と関連していました。

loginUrl = $facebook->getLoginUrl(array("scope")=>"publish_stream");

ありがとうございます。