FacebookSDK(php)无法识别'#'多查询调用中的字符

时间:2013-04-05 15:39:32

标签: facebook facebook-graph-api facebook-php-sdk

我与Facebok PHP SDK有一个奇怪的错误。我试图根据第一个角色的名字和他们的个人资料的图像获得朋友列表。

我寻找“约翰”朋友的功能看起来像这样:

public function searchFriends($fbToken, $search) {
    # atualizar a api do facebook com o token de acesso:
    $this->facebookAPI->setAccessToken($token);

    $multiquery = array(
        "q1" => 'SELECT name, uid FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=me()) AND strpos(lower(name), "john") = 0',
        "q2" => "SELECT url FROM profile_pic WHERE width = 32 AND height = 32 AND id in #q1"
    );

    $send = array();
    $send['method'] = 'fql.multiquery';
    $send['queries'] = $multiquery;
    $send['callback'] = '';

    $friends = $this->facebookAPI->api($send);

    return $friends;
}

我得到的错误是:

致命错误:未捕获异常:601:分析程序错误:位置71处出现意外“#q1”。抛出/nfs/c03/h03/mnt/55868/domains/secure.thegoodfellas.com.br/html第1252行/tamojuntometro/php/fb/base_facebook.php

看起来FacebookAPI不识别引用第一个查询的“#”字符。有没有人对此有所了解?

非常感谢。

1 个答案:

答案 0 :(得分:0)

我发现了错误。

问题在于我的第二个问题:

“q2”=> “SELECT url FROM profile_pic WHERE width = 32 AND height = 32 AND id in#q1

“q2”=> “在中选择url FROM profile_pic id(#q1中的SELECT id