mysql_query成功但获取mysql_fetch_array()需要参数1为资源

use*_*210 0 php mysql sql

以下功能将用于将Facebook访问令牌输入数据库.用户ID已经有一个关联的记录,因此只需要更新"acc_tok"字段.

出于某种原因,即使$ _result值保持为"1"并且函数回显"成功!",也会出现一条警告:

"警告: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!");
        }
}
Run Code Online (Sandbox Code Playgroud)

nic*_*ckb 6

您正在进行UPDATE查询,没有要从结果中获取的行,因此来自mysql_query()而不是资源的布尔值.

手册:

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