php资源ID#11问题

时间:2013-06-08 17:41:38

标签: php mysql

以下函数返回Resource id #11。如何使用我现有的代码修复此问题?

function GET_PAGE() {
    global $page;
    if(isset($_GET)) {
        foreach($_GET as $key => $value){
            $query = "SELECT * FROM pages WHERE title = '{$key}'";
            $page = mysql_query($query);
            confirm_query($page);
            return $page;
        }
    }
}

1 个答案:

答案 0 :(得分:3)

您没有获取任何行。

mysql_query返回一个必须由mysql_fetch_* - 函数之一解释的资源。根据您的偏好mysql_fetch_arraymysql_fetch_object最合适。


btw:不推荐使用MySQL扩展。考虑切换到PDO或MySQLi:

  

自PHP 5.5.0起,此扩展程序已弃用,将来将被删除。相反,应使用MySQLiPDO_MySQL扩展名。有关详细信息,另请参阅MySQL: choosing an API指南和related FAQ。   (http://www.php.net/manual/en/function.mysql-query.php

两者都允许您使用Prepared Statements来properly secure数据库语句。 您发布的示例很容易进行SQL注入!!!

Exploits of a mom - xkcdhttp://xkcd.com/327/