Php 修复Facebook sdk路径
我正在编辑一个.php文件,该文件将在我的XAMPP安装中运行。 该文件启动时必须连接到Facebook,然后在FB用户档案上发布一条短信 为此,我遵循了本官方页面上的指导原则: 具体地说,我遵循了“手动安装(如果您确实需要)”过程。没关系,但是当我启动脚本时,我得到了以下错误: 致命错误:在第31行的C:\xampp\htdocs\Octopus\index.php中找不到类“Facebook” 这是我的代码,我在其中插入了一些伪造的身份验证凭据:Php 修复Facebook sdk路径,php,facebook,sdk,Php,Facebook,Sdk,我正在编辑一个.php文件,该文件将在我的XAMPP安装中运行。 该文件启动时必须连接到Facebook,然后在FB用户档案上发布一条短信 为此,我遵循了本官方页面上的指导原则: 具体地说,我遵循了“手动安装(如果您确实需要)”过程。没关系,但是当我启动脚本时,我得到了以下错误: 致命错误:在第31行的C:\xampp\htdocs\Octopus\index.php中找不到类“Facebook” 这是我的代码,我在其中插入了一些伪造的身份验证凭据: <?php //require __
<?php
//require __DIR__ . "/vendor/autoload.php";
//require_once __DIR__ . '\vendor\autoload.php';
//echo __DIR__ . '\vendor\autoload.php';
/*if (($loader = require_once __DIR__ . '/vendor/autoload.php') == null)
{
die('Vendor directory not found, Please run composer install.');
}
*/
// require Facebook PHP SDK
// see: https://developers.facebook.com/docs/php/gettingstarted/
// require_once("/YOUR_PATH_TO/facebook_php_sdk/facebook.php");
//require_once(__DIR__ . '\vendor\facebook\php-sdk-v4\src\facebook.php');
// initialize Facebook class using your own Facebook App credentials
// see: https://developers.facebook.com/docs/php/gettingstarted/#install
require_once __DIR__ . '/facebook-php-sdk-v4-5.0.0/src/Facebook/autoload.php';
$config = array();
//$config['appId'] = 'YOUR_APP_ID';
//$config['secret'] = 'YOUR_APP_SECRET';
$config['fileUpload'] = false; // optional
$fb = new Facebook(array(
'appId' => '43629645236452943',
'secret' => '385628354628075362783654728365',
));
//$fb = new Facebook($config);
// INIZIO SESSIONE DI REPERIMENTO TOKEN
session_start();
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookSDKException;
$helper = new FacebookRedirectLoginHelper('{callback-url}', '{app-id}', '{app-secret}');
try
{
$session = $helper->getSessionFromRedirect();
}
catch(FacebookSDKException $e)
{
$session = null;
}
if ($session) {
// User logged in, get the AccessToken entity.
$accessToken = $session->getAccessToken();
// Exchange the short-lived token for a long-lived token.
$longLivedAccessToken = $accessToken->extend();
// Now store the long-lived token in the database
// . . . $db->store($longLivedAccessToken);
// Make calls to Graph with the long-lived token.
// . . .
} else {
echo '<a href="' . $helper->getLoginUrl() . '">Login with Facebook</a>';
}
// FINE SESSIONE
// define your POST parameters (replace with your own values)
// "access_token" => "YOUR_ACCESS_TOKEN", // see: https://developers.facebook.com/docs/facebook-login/access-tokens/
$params = array(
"access_token" => $accessToken, // see: https://developers.facebook.com/docs/facebook-login/access-tokens/
"message" => "Here is a blog post about auto posting on Facebook using PHP #php #facebook",
"link" => "http://www.pontikis.net/blog/auto_post_on_facebook_with_php",
"picture" => "http://i.imgur.com/lHkOsiH.png",
"name" => "How to Auto Post on Facebook with PHP",
"caption" => "www.pontikis.net",
"description" => "Automatically post on Facebook with PHP using Facebook PHP SDK. How to create a Facebook app. Obtain and extend Facebook access tokens. Cron automation."
);
// post to Facebook
// see: https://developers.facebook.com/docs/reference/php/facebook-api/
try {
//$ret = $fb->api('/YOUR_FACEBOOK_ID/feed', 'POST', $params);
$ret = $fb->api('/MY_FACEBOOK_PROFILE/feed', 'POST', $params);
echo 'Successfully posted to Facebook';
} catch(Exception $e) {
echo $e->getMessage();
}
?>
在此图像中,我的根文件夹的屏幕:
你能帮我吗?为什么facebook对象不可实例化?
谢谢 我认为您还应该添加名称空间 我的一个项目中的代码:
$fb = new Facebook\Facebook([
'app_id' => $app_id,
'app_secret' => $app_secret,
'default_graph_version' => 'v2.2',
]);
希望有帮助。我认为您还应该添加名称空间 我的一个项目中的代码:
$fb = new Facebook\Facebook([
'app_id' => $app_id,
'app_secret' => $app_secret,
'default_graph_version' => 'v2.2',
]);
希望有帮助。谢谢@BarneyK,你的建议解决了我的问题。我现在在代码的第49行出现了一个错误:$helper=newfacebookrirectloginhelper(“{callback url}”,“{app id}”,“{app secret}”);这和上面提到的一样吗?我不这么认为,因为你被“使用Facebook\FacebookRedirectLoginHelper;”收录了。错误仍然是“未找到xy类”?我通过使用此路径名解决:$helper=new-Facebook\Helpers\Facebook-redirectloginhelper(“{callback-url}”,“{app-id}”,“{app-secret}”);如何获取回调url?回调url是您站点上的url,您希望在登录后重定向用户。例如:FacebookRedirectLoginHelper('mypage.com/after_login.php',$appid,$appsecret');顺便说一句,你能接受我的回答吗?:)问题是,我在FacebookRedirectLoginHelper中插入的每个url都会导致生成以下错误:可捕获的致命错误:传递给Facebook\Helpers\FacebookRedirectLoginHelper的参数1::\uu construct()必须是Facebook\Authentication\OAuth2Client的实例,字符串给定,在第50行的C:\xampp\htdocs\Octopus\index.php中调用,并在第77行的C:\xampp\htdocs\Octopus\facebook-php-sdk-v4-5.0.0\src\facebook\Helpers\facebook重定向loginhelper.php中定义。请注意,我在localhost中使用scriptThank@BarneyK,您的建议解决了我的问题。我现在在代码的第49行出现了一个错误:$helper=newfacebookrirectloginhelper(“{callback url}”,“{app id}”,“{app secret}”);这和上面提到的一样吗?我不这么认为,因为你被“使用Facebook\FacebookRedirectLoginHelper;”收录了。错误仍然是“未找到xy类”?我通过使用此路径名解决:$helper=new-Facebook\Helpers\Facebook-redirectloginhelper(“{callback-url}”,“{app-id}”,“{app-secret}”);如何获取回调url?回调url是您站点上的url,您希望在登录后重定向用户。例如:FacebookRedirectLoginHelper('mypage.com/after_login.php',$appid,$appsecret');顺便说一句,你能接受我的回答吗?:)问题是,我在FacebookRedirectLoginHelper中插入的每个url都会导致生成以下错误:可捕获的致命错误:传递给Facebook\Helpers\FacebookRedirectLoginHelper的参数1::\uu construct()必须是Facebook\Authentication\OAuth2Client的实例,字符串给定,在第50行的C:\xampp\htdocs\Octopus\index.php中调用,并在第77行的C:\xampp\htdocs\Octopus\facebook-php-sdk-v4-5.0.0\src\facebook\Helpers\facebook重定向loginhelper.php中定义。请注意,我使用的是localhost脚本