0

下面的函数将用于将 Facebook 访问令牌输入数据库。用户 id 已经有一个关联的记录,因此只需要更新“acc_tok”字段。

由于某种原因,即使 $_result 值保持“1”并且函数回显“Successful!”,也会出现警告:

“警告:mysql_fetch_array() 期望参数 1 是资源,给定的布尔值”。有谁知道为什么查询似乎成功但只返回一个布尔值而不是 mysql_fetch_array 可以使用的东西?谢谢阅读

function setUserAccessToken($_uid, $_accTok){
        $sql = "UPDATE `user_core` SET `acc_tok`=$_accTok WHERE `id` = $_uid";
        $_result = mysql_query($sql) or die($sql."<br/><br/>".mysql_error());
        echo $_result;
        if ($_result) {
        echo ("Successful!");
            $_resultArray = mysql_fetch_array($_result);
            print_r($_resultArray);
        } else {
            echo ("Failed!");
        }
}
4

1 回答 1

6

您正在执行UPDATE查询,没有可从结果中获取的行,因此是一个布尔值,mysql_query()而不是资源。

手册

对于其他类型的 SQL 语句,INSERT、UPDATE、DELETE、DROP 等,mysql_query() 在成功时返回 TRUE,在错误时返回 FALSE。

于 2012-08-16T16:54:38.200 回答