0

我在使用 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/tamojuntometro/php/fb /base_facebook.php 第 1252 行

看起来 FacebookAPI 无法识别指向第一个查询的“#”字符。有人对此有任何线索吗?

非常感谢。

4

1 回答 1

0

我发现了错误。

问题出在我的第二个查询上:

"q2" => "从 profile_pic 中选择 url,其中 width = 32 AND height = 32 AND id in #q1 "

"q2" => "SELECT url FROM profile_pic id in (SELECT id in #q1) "

于 2013-04-05T18:41:54.787 回答