Php Facebook参加活动请求

Php Facebook参加活动请求,php,facebook,facebook-graph-api,facebook-fql,Php,Facebook,Facebook Graph Api,Facebook Fql,我想在Facebook上的个人资料上获得所有参加活动的信息。 我找到了这个有趣的答案,我想这就是我需要的。 我复制并粘贴代码,更改应用程序id、密码和页面, 我启动了该页面,但页面上写着“致命错误:在第25行的/membri/bestparty/BPARTY4/index.php中找不到'Facebook'类” 我包括了github下载的FacebookPHPSDKV4,没有编写器(是的,我阅读了所有关于它的文档,但我不理解它是如何工作的) 这是密码 <?php require_once

我想在Facebook上的个人资料上获得所有参加活动的信息。 我找到了这个有趣的答案,我想这就是我需要的。

我复制并粘贴代码,更改应用程序id、密码和页面, 我启动了该页面,但页面上写着“致命错误:在第25行的/membri/bestparty/BPARTY4/index.php中找不到'Facebook'类”

我包括了github下载的FacebookPHPSDKV4,没有编写器(是的,我阅读了所有关于它的文档,但我不理解它是如何工作的) 这是密码

<?php
require_once 'facebook-php-sdk-v4-4.0-dev/autoload.php';

use Facebook\FacebookRequest;
use Facebook\FacebookRequestException;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookServerException;
use Facebook\FacebookSession;


date_default_timezone_set('America/Los_Angeles');


    $app_id = '1508703399385376';
    $secret = 'c16169730c7dd504f2ba3a88b50e0888';
    $page_id = '1482914931991616';

    $config = array();
    $config['appId'] = $app_id;
    $config['secret'] = $secret;
    $config['fileUpload'] = false; // optional

    $facebook = new Facebook($config);

    $fql = 'SELECT 
                eid, 
                name, 
                pic_square, 
                creator,
                start_time,
                end_time
            FROM event 
            WHERE eid IN 
                (SELECT eid 
                    FROM event_member 
                    WHERE uid='.$page_id.'
                ) 
            AND end_time >= ' . mktime() . '
            ORDER BY start_time ASC
    ';

    $ret_obj = $facebook->api(array(
        'method' => 'fql.query',
        'query' => $fql,
    ));

    $html = '';                            
    foreach($ret_obj as $key)
    {
        $facebook_url = 'https://www.facebook.com/event.php?eid=' . $key['eid'];

        $start_time = date('M j, Y \a\t g:i A', $key['start_time']);
        $end_time = date('M j, Y \a\t g:i A', $key['end_time']);

        $html .= '
            <div class="event">
                <a href="'.$facebook_url.'">
                    <img src="'.$key['pic_square'].'" />
                </a>
                <span>
                    <a href="'.$facebook_url.'">
                        <h2>'.$key['name'].'</h2>
                    </a>
                    <p class="time">'.$start_time.'</p>
                    <p class="time">'.$end_time.'</p>
                </span>
            </div>
        ';
    }

    echo "$html a";
    echo "aaaa";



?>

我还想知道,如果我把我的个人资料id,而不是页面id,它也可以工作。
谢谢

您似乎将SDK 3代码与SDK 4混合在一起。有关SDK 4代码的示例,请参见

SDK 4没有根
Facebook
类,并且不使用
$Facebook=new Facebook($config)不再


FQL也即将停产-它仍然可以访问在其被弃用之前创建的应用程序,但是新的应用程序必须使用Graph SDK 2.2,并且根本不能执行FQL查询。

如果包含sdk3中的Facebook.php和base_Facebook.php,则说明:未捕获的异常:REST API不推荐用于v2.1及更高版本,并在线抛出/membri/bestparty/BPARTY4/Facebook php SDK master/src/base_Facebook.php1325@AndreaLoda你不能只是混合/匹配SDK 3和SDK 4。看起来您的应用足够新,无法访问旧的v2.0 API。您需要以API2.2/SDK4的方式进行操作。