【发布时间】:2012-05-18 08:30:17
【问题描述】:
如何使用PHP-SDK或Javascript SDK实现“向朋友推荐MY-PAGE”?
【问题讨论】:
标签: facebook facebook-javascript-sdk facebook-php-sdk
如何使用PHP-SDK或Javascript SDK实现“向朋友推荐MY-PAGE”?
【问题讨论】:
标签: facebook facebook-javascript-sdk facebook-php-sdk
首先,您需要包含 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,你可以有一个 HTML 按钮,使用 onclick 属性来调用一个函数。
<input type="button" value="Share" onclick="share();"/>
在share函数中,method属性是必须的,其他属性(link、picture、name、caption、description)是可选的。方法属性中的“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,点击分享按钮会弹出一个窗口,用户可以在发送之前输入自己的消息。发送后无需额外重定向,因为用户仍在同一页面上。
P.S.:我现在还在学习 Facebook 和 PHP,如果我犯了任何错误,请纠正我哈哈。谢谢=)
【讨论】: