2011-12-28 12 views
2

私はPHPベースのウェブサイトwww.darooadda.comを持っています。 Facebookのアカウントから友達を招待するFacebook APIがあるかどうかを知りたいユーザーがfacebookアカウントを使用してwebiteにログインすると、facebookの友達をWebサイトから招待できるはずです。Facebook api for invite friends

誰も私に正しいapiドキュメントやサンプルPHPコードを教えてもらえますか?

+2

このdocが役立つかもしれないあなたのhttp://developers.facebook .com/docs/reference/dialogs/requests/ –

答えて

5

このサンプルコードは、FacebookのAPI 3.0.1を使用して、友人を要求し、要求が、あなたのウェブサイトからFacebookの友人を招待コードのこの小さなラインを使用して招待状を送信

$<?php 
// Requires Facebook PHP SDK 3.0.1: https://github.com/facebook/php-sdk/ 
require ('includes/facebook.php'); 
define('FACEBOOK_APP_ID',"your facebook ID"); 
define('FACEBOOK_SECRET',"your facebook secret password"); 

$user = null; 

// Create our Application instance (replace this with your appId and secret). 
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID, 
'secret' => FACEBOOK_SECRET, 
'cookie' => true 
)); 

$user = $facebook->getUser(); 
$loginUrl = $facebook->getLoginUrl(); 

if (empty($user)) { 
echo("<script> top.location.href='" . $loginUrl . "'</script>"); 
exit(); 
} 
?> 
<!doctype html> 
<html> 
<head> 
    <title>Send An Application Request Using The Facebook Graph API</title> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> 

</head> 
<body> 
<div id="fb-root"></div> 


<a href="#">Send Application Request</a> 

<script> 
    window.fbAsyncInit = function() { 
    FB.init({ 
     appId: '<?php echo $facebook->getAppID() ?>', 
     status: true, 
     cookie: true, 
     oauth: true 
    }); 
    }; 

    $('a').click(sendRequest); 
    function sendRequest() { 
    FB.ui({ 
     method: 'apprequests', 
     message: 'Check out this application!', 
     title: 'Send your friends an application request', 
    }, 
    function (response) { 
     if (response.request && response.to) { 
     var request_ids = []; 
     for(i=0; i<response.to.length; i++) { 
      var temp = response.request + '_' + response.to[i]; 
      request_ids.push(temp); 
     } 
     var requests = request_ids.join(','); 
     $.post('handle_requests.php',{uid: '<?php echo $user; ?>', request_ids: requests},function(resp) { 
      // callback after storing the requests 
     }); 
     } else { 
     alert('canceled'); 
     } 
    }); 
    return false; 
    } 

    // Load the SDK Asynchronously 
    (function(d){ 
    var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    d.getElementsByTagName('head')[0].appendChild(js); 
    }(document)); 
</script> 
</body> 
</html> 
+0

ゲームでのみ機能しますか?または任意のアプリですか?これによると、それはゲームのためにのみ動作します:https://developers.facebook.com/docs/games/services/gamerequests –

+0

また、それはモバイルWeb上で動作しますか? –

2

を送信した場合、あなたのサイトに戻って投稿することができますあなたのウェブサイトを訪問するすべてのFacebookの友達に。私はまた、このスクリプトをうまく使っています。 あなたのドメインはsslと認証されている必要があります。 Facebookはセキュリティで保護されていないドメインを許可していないためです。

<script src="http://connect.facebook.net/en_US/all.js"></script> 

<script> 
FB.init({ 
appId:'APP_ID', 
cookie:true, 
status:true, 
xfbml:true 
}); 

function FacebookInviteFriends() 
{ 
FB.ui({ 
method: 'apprequests', 
message: 'Your Message diaolog' 
}); 
} 
</script> 


//HTML Code 
<div id="fb-root"></div> 
<a href='#' onclick="FacebookInviteFriends();"> 
Facebook Invite Friends Link 
</a> 

あなたがチェックすることができ、より詳細のために...あなたのウェブサイトのメインページへのコードの下に

<script type='text/javascript'> 
if (top.location!= self.location) 
{ 
top.location = self.location 
} 
</script> 

これを追加します - http://www.9lessons.info/2012/07/facebook-invite-friends-api.html