首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php oop mysql查询

问php oop mysql查询
EN

Stack Overflow用户
提问于 2011-03-19 00:49:54
回答 2查看 642关注 0票数 0

我刚才收到了一些帮助,但始终不能找出为什么这个查询不工作?我如何修改它才能使其正常工作?

代码语言:javascript
复制
class Posts {

  public static function multipleQuery() {

    $result = mysql_query("SELECT * FROM posts ORDER BY id DESC LIMIT 0, 3")
              , __CLASS__);

      while($object = mysql_fetch_object($result)) {
        $return[] = $object;
      }
      return $return;
  }
}


$array = Posts::multipleQuery();
foreach($array AS $row) {
   echo $row->title;
}

不幸的是,我什么也得不到。查询可以工作,我已经测试过了。

EN

回答 2

Stack Overflow用户

发布于 2011-03-19 00:55:02

mysql_query上的第二个参数应该是一个mysql连接句柄。传递类的名称不是这样的句柄,所以您试图在一个不存在的数据库连接上执行查询。同样,您没有错误检查,这将显示此问题:

代码语言:javascript
复制
public static function multipleQuery(){
    $result = mysql_query("SELECT * FROM posts ORDER BY id DESC LIMIT 0, 3") 
              or die(mysql_error());

    while($object = mysql_fetch_object($result)) {
        $return[] = $object;
    }
    return $return;
}
票数 4
EN

Stack Overflow用户

发布于 2011-03-19 01:08:11

我猜您已经关闭了错误报告,因此看不到应该由下面这行代码导致的解析错误:

代码语言:javascript
复制
$result = mysql_query("SELECT * FROM posts ORDER BY id DESC LIMIT 0, 3"), __CLASS__);

我看到两个括号关闭了,但只有一个打开了。

另外,你也不应该把类名放在里面。如果有什么不同的话,您应该放入数据库连接的对象,而不是类的名称。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5355234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档