-4

我这里有两个文件,在让 mysql_fetch_array 工作时遇到了一些问题。我认为这是因为它是从另一个函数调用的?

show_results.php:

include "sql_functions.php";

function content_humanResAll (){
    q_humanResAll();
    while($row = mysql_fetch_array($q_humanResAll_result)){
            ...

sql_functions.php:

include "db_connect.php"; //connect to db

// Query for human resources
function q_humanResAll() {

    $q_humanResAll = "SELECT * FROM human_resources LIMIT 0, 30";
    $q_humanResAll_result = mysql_query($q_humanResAll) or die("could not query MySql");
    $q_humanResAll_numRows = mysql_num_rows($q_humanResAll_result);
    //return $q_humanResAll_result// tried this also, didn't work.
}

为什么我会收到错误“mysql_fetch_array() 期望参数 1 是资源,给定 null”?

顺便说一句,show_results.php 包含在 index.php 中。所以它包括很多,但它不应该是一个问题,对吧?

我也尝试过将函数 q_humanResAll() 中的变量设为全局变量,但也没有用。

如果您需要更多输入,请告诉我。

谢谢

4

1 回答 1

1

您没有在 content_humanResAll 中定义 $q_humanResAll_result。所以你需要把它从另一个函数传回来,像这样:

function q_humanResAll() {
    $q_humanResAll = "SELECT * FROM human_resources LIMIT 0, 30";
    $q_humanResAll_result = mysql_query($q_humanResAll) or die("could not query MySql");
    $q_humanResAll_numRows = mysql_num_rows($q_humanResAll_result);
    return $q_humanResAll_result;
}


function content_humanResAll (){
    $q_humanResAll_result = q_humanResAll();
    while($row = mysql_fetch_array($q_humanResAll_result)){
            ...
于 2012-06-29T12:20:34.133 回答