Php 对非对象调用成员函数setFileUploadSupport()
我正在开发我的第一个facebook应用程序,其中包括创建一个新相册和将照片发布到用户墙上 通过学习facebook文档和一些教程,我得到了这段代码,但我发现了以下错误 致命错误:对非对象调用成员函数setFileUploadSupport()。Php 对非对象调用成员函数setFileUploadSupport(),php,facebook,facebook-graph-api,Php,Facebook,Facebook Graph Api,我正在开发我的第一个facebook应用程序,其中包括创建一个新相册和将照片发布到用户墙上 通过学习facebook文档和一些教程,我得到了这段代码,但我发现了以下错误 致命错误:对非对象调用成员函数setFileUploadSupport()。 $facebook -> setFileUploadSupport(true); $album_details = array('message' => 'Album desc', 'name' =>
$facebook -> setFileUploadSupport(true);
$album_details = array('message' => 'Album desc', 'name' => 'Album name');
$create_album = $facebook -> api('/me/albums', 'post', $album_details);
$album_uid = $create_album['id'];
$photo_details = array('message' => 'Photo message');
$file = 'app.jpg';
$photo_details['image'] = '@' . realpath($file);
$upload_photo = $facebook -> api('/' . $album_uid . '/photos', 'post', $photo_details);
请帮我做这个。谢谢您是否已将变量($facebook)实例化为对象类 例如:
include('class.Facebook.php');
$facebook = new Facebook();
您是否已将变量($facebook)实例化为对象类 例如:
include('class.Facebook.php');
$facebook = new Facebook();
您需要先创建一个新对象来实例化该类。您还需要传递$config数组-因为构造函数是“缺少1个参数”;这就是你得到的错误
// Create facebook object.
$config = array(
'appId' => 'app id',
'secret' => 'app secret',
'fileUpload' => true
);
// Initiate the library
$facebook = new Facebook($config);
将“应用程序id”和“应用程序机密”替换为您在创建facebook应用程序时获得的
编辑:在代码中添加了一个小更改。$config接受数组中的第三个可选元素,称为fileUpload(表示是否启用了文件上载的布尔值)。您需要设置它,因为您调用了setFileUploadSupport()方法。或者另一种方法是像您所做的那样编写is,并直接在setFileUploadSupport中传递布尔值(true)。任何一种方法都有效。您需要先创建一个新对象来实例化该类。您还需要传递$config数组-因为构造函数是“缺少1个参数”;这就是你得到的错误
// Create facebook object.
$config = array(
'appId' => 'app id',
'secret' => 'app secret',
'fileUpload' => true
);
// Initiate the library
$facebook = new Facebook($config);
将“应用程序id”和“应用程序机密”替换为您在创建facebook应用程序时获得的
编辑:在代码中添加了一个小更改。$config接受数组中的第三个可选元素,称为fileUpload(表示是否启用了文件上载的布尔值)。您需要设置它,因为您调用了setFileUploadSupport()方法。或者另一种方法是像您所做的那样编写is,并直接在setFileUploadSupport中传递布尔值(true)。任何一种方法都有效。您需要使用文件上载支持实例化该类,并请求正确的权限
$facebook = new Facebook(array(
'appId' => 'YOUR_APP_ID',
'secret' => 'YOUR_APP_SECRET',
'fileUpload' => true // enable file upload support
));
// get a login url with the correct perms
$facebook->getLoginUrl(array(
'scope' => 'photo_upload,first_name,email,publish_stream,read_stream'
));
照片上传是此处的关键权限,允许您上传照片 您需要使用文件上载支持实例化该类,并请求正确的权限
$facebook = new Facebook(array(
'appId' => 'YOUR_APP_ID',
'secret' => 'YOUR_APP_SECRET',
'fileUpload' => true // enable file upload support
));
// get a login url with the correct perms
$facebook->getLoginUrl(array(
'scope' => 'photo_upload,first_name,email,publish_stream,read_stream'
));
照片上传是此处的关键权限,允许您上传照片 哦,谢谢你的回复,我刚刚加了它。但现在我得到了一个警告和一个错误<代码>警告:缺少Facebook的参数1::u construct(),在第188行的/home/file.php中调用,在第35行的/home/Facebook.php中定义|
致命错误:未捕获卷曲异常:6:无法解析在第886行的/home/base_Facebook.php中抛出的主机“graph.Facebook.com”
哦,谢谢你的回复,我刚刚添加了它。但现在我得到了一个警告和一个错误<代码>警告:Facebook缺少参数1::u construct(),在第188行的/home/file.php中调用,在第35行的/home/Facebook.php中定义,它当然解决了参数丢失的错误。但是现在我得到了一个新的错误,即:致命错误:未捕获OAuthException:无效的OAuth访问令牌签名。在1106行的/home/base_facebook.php中抛出
如果这与权限有关,则我的身份验证url包括发布流的权限:$auth_url=”http://www.facebook.com/dialog/oauth?client_id=" . $应用程序id。“&重定向_uri=”。urlencode($canvas\u页面)。“&scope=first\u name,email,publish\u stream,read\u stream”代码>除了这些,我还需要一些额外的权限吗?存在身份验证问题。尝试SIR在这里的建议:您是否创建了一个用户变量来检查用户当前是否已登录<代码>$user=$facebook->getUser()代码>。如果用户已连接,它将返回用户ID,如果未连接,则返回0。可能是问题myecho$facebook->getUser()代码>返回“0”,但我已登录到facebook。另外,在我最后一次遇到这个错误:致命错误:未捕获OAutheException:验证应用程序时出错。在1106行的/home/base_facebook.php中抛出,它当然解决了参数丢失错误。但是现在我得到了一个新的错误,即:致命错误:未捕获OAuthException:无效的OAuth访问令牌签名。在1106行的/home/base_facebook.php中抛出
如果这与权限有关,则我的身份验证url包括发布流的权限:$auth_url=”http://www.facebook.com/dialog/oauth?client_id=" . $应用程序id。“&重定向_uri=”。urlencode($canvas\u页面)。“&scope=first\u name,email,publish\u stream,read\u stream”代码>除了这些,我还需要一些额外的权限吗?存在身份验证问题。尝试SIR在这里的建议:您是否创建了一个用户变量来检查用户当前是否已登录<代码>$user=$facebook->getUser()代码>。如果用户已连接,它将返回用户ID,如果未连接,则返回0。可能是问题myecho$facebook->getUser()代码>返回“0”,但我已登录到facebook。另外,在我最后一次遇到这个错误:致命错误:未捕获OAutheException:验证应用程序时出错。在1106行的/home/base_facebook.php中抛出