繁体   English   中英

php返回mysql_query

[英]php return mysql_query

如何从函数中检索mysql_query? 例如:

class A() {
   ...
   function getAll($l=1) {
      ...
      $result = mysql_query($query); 
      return $result
   }
   ...
}

$a = new A();
$r = $a -> getAll(2);
while ($row = mysql_fetch_assoc($r)) {
   // do something
} 

当我从函数返回$ result时,上面的代码不起作用。 但是,当我在getAll函数中使用mysql_fetch_assoc函数时,它可以完美运行。 所以基本上,我的问题是如何从函数返回mysql结果集?

**编辑**

我实际上没有任何错误。 上面喜欢的while语句将不会执行。 但是,当我从getAll函数中执行查询时,查询效果很好。

不要从查询中返回结果资源,而是返回从该资源中提取的数据:

$data = array();

while ( $row = mysql_fetch_assoc($result) ) {
    $data[] = $row;
}

return $data;

绝对可以。

执行var_dump($r)以确保获得资源。 如果不是,请仔细检查您的SQL。 可能有错误。

还要在脚本顶部打开其他错误报告(以及检查mysql_error ),以获得有关错误原因的更好线索:

ini_set('display_errors', true);
error_reporting(E_ALL);

您已经编辑了许多代码,因此很难进行进一步调查。 只要确保您的方法没有关闭mysql连接即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM