【发布时间】:2014-05-08 04:39:11
【问题描述】:
我想让我的所有网站作者都可以在我们的 facebook 页面上发布他们的文章,而无需授予他们管理员访问权限。
所以我创建了一个简单的表单,作者在其中输入:URL、图像的 URL、消息
提交时,此表单将向 facebook.php 发送一个 ajax 请求,魔法“应该”发生的地方。
第一个问题发生在“require_once”。 不可能要求所有 4 个文件而不会出现错误。 如果我摆脱了 facebook 异常,那么除了请求本身之外一切正常。 似乎有一个 PHP 错误,因为我根本没有得到 ajax 响应。
session_start();
require_once($_SERVER['DOCUMENT_ROOT'].'/sys/facebook/FacebookSession.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/sys/facebook/FacebookRequest.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/sys/facebook/GraphObject.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/sys/facebook/FacebookRequestException.php');
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphObject;
use Facebook\FacebookRequestException;
$message = safe($_POST["message"]);
$url = safe($_POST["url"]);
$image = safe($_POST["image"]);
if($message == "" OR $url == "" OR $image == ""){
echo "incomplete";
return;
}
FacebookSession::setDefaultApplication('{APP ID}','{APP SECRET}');
$session = new FacebookSession('{Page Access Token}');
if($session) {
try {
$response = (new FacebookRequest(
$session, 'POST', '/{Page ID}/feed', array(
'message' => $message,
'link' => $url,
'picture' => $image
)
))->execute()->getGraphObject();
echo "Posted with id: " . $response->getProperty('id');
} catch(FacebookRequestException $e) {
echo "Exception occured, code: " . $e->getCode();
echo " with message: " . $e->getMessage();
}
} else {
echo "No Session available!";
}
【问题讨论】:
-
yes cUrl 已安装。
标签: php facebook facebook-graph-api