mysql_query从其他函数返回不起作用?

时间:2012-03-03 02:16:24

标签: php mysql

我有这种情况,我无法弄清楚它为什么不起作用。我打赌它很简单,但我找不到解决方案。

这是第一个文件:

$result = query("SELECT name FROM table WHERE something=1 LIMIT 1");
$row = mysql_fetch_row($result);
echo $row[0];

这是来自第二个文件的查询功能:

function query($query){
    return mysql_query($query) or die (mysql_error());
}

我得到的错误是:

mysql_fetch_row() expects parameter 1 to be resource, boolean given

@ line where

$row = mysql_fetch_row($result);

所以,很简单,为什么这不是这样的,并且在我替换

时正在工作
$result = query("SELECT name FROM table WHERE something=1 LIMIT 1");

$result = mysql_query("SELECT name FROM table WHERE something=1 LIMIT 1");

2 个答案:

答案 0 :(得分:2)

query功能更改为

function query( $query ){

    $result = mysql_query( $query );
    if ( $result === FALSE ){
        die( mysql_error() );
    }
    return $result;
}

答案 1 :(得分:0)

我第一次开始编程时经常遇到这个错误。我得到这个最典型的原因是因为没有初始化数据库连接,或者因为我调用了错误版本的mysql / sql / mysqli。除此之外,确保查询中所有内容拼写正确是关键。

我要做的一件事就是用一组实际值来查询我的查询,然后在phpmyadmin中运行它,看它是否成功。如果是,则可能是由于缺少正确的数据库连接。