PHP-SDK または Javascript SDK を使用して「友達にマイページを提案する」を実装する方法は?
2 に答える
まず、base_facebook.php、facebook.php、および fb_ca_chain_bundle.crt を含む Facebook SDK バンドルが必要です。fbmain.php と config.php も必要です。
次に、fbmain.php を含むファイル (postToWall.php など) が必要です。
<?php
include_once "fbmain.php";
?>
postToWall.php ファイルの例。
<html>
<body id="my_body">
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId: '<?php echo $facebook->getAppID() ?>',
cookie: true,
xfbml: true,
oauth: true
});
FB.Canvas.setAutoGrow();
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
<?php
if ($me)
{
$params = array('message' => "message here",
'picture' => "picture hyperlink here",
'name' => "name here",
'link' => "facebook page hyperlink here",
'description' => " description here"
);
$status = $facebook->api('/me/feed', 'POST', $params);
if (isset($status['id']))
{
//do something
}
}
?>
</body>
</html>
私の家庭教師である Zen Leow 氏の功績
私が投稿した以前の解決策は、PHP SDK メソッドを使用することです。
JavaScript SDK を使用すると、onclick 属性を使用して関数を呼び出す HTML ボタンを作成できます。
<input type="button" value="Share" onclick="share();"/>
共有関数内では、メソッド プロパティは必須であり、他のプロパティ (リンク、画像、名前、キャプション、説明) はオプションです。method プロパティの値 "feed" は、必要なフィード ダイアログを参照します。メソッド プロパティには、"apprequests" (要求ダイアログ) や "send" (送信ダイアログ) などの他の値があります。詳細については、http://developers.facebook.com/docs/reference/dialogs/ をご覧ください。
<script>
function share()
{
var obj = {
method: "feed",
link: "Facebook page hyperlink",
picture: "Picture hyperlink",
name: "Title",
caption: "A short caption right below the title",
description: "Description"
};
function callback(response) {
document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
}
FB.ui(obj, callback);
}
</script>
PHP SDK と JavaScript SDK の違い
PHP SDK の場合、共有ボタンをクリックすると、postToWall.php で指定されたデフォルト メッセージがユーザーのウォールに直接投稿されます。最初にユーザーを postToWall.php にリダイレクトしてから、ユーザーをアプリケーション ページにリダイレクトする必要があります。
JavaScript SDK の場合、共有ボタンをクリックするとウィンドウがポップアップし、ユーザーはメッセージを送信する前に独自のメッセージを入力できます。ユーザーがまだ同じページにいるため、送信後に追加のリダイレクトは必要ありません。
PS: 現時点ではまだ Facebook と PHP を学んでいるので、間違いがあれば訂正してください (笑)。ありがとう =)