PHP: fatal error :调用未定义的方法

标签 php mysql

我的 sban 类有一些问题,顺便说一句,我在 oop 类上真的很糟糕,但我正在努力解决问题:)

class SBan {


    private $con;
    private $db;

    public function __construct( $db = MYSQL_DATABASE ) {
        $this->con = mysql_connect(MYSQL_HOSTNAME.":".MYSQL_HOSTPORT, MYSQL_USERNAME, MYSQL_PASSWORD);
        if(!$this->con)
        {
            die("CANT CONNECT MYSQL SERVER");
            return false;
        }

        $this->db = mysql_select_db($db, $this->con);
        if (!$this->db) {
            die("CANT SELECT MYSQL DB");
            return false;
        }
    }

   public function SbanUser(){

        $query = "SELECT user FROM sb_admins WHERE authid='".$_SESSION["login_steamid"]."'";

        $result = $this->Query($query);
        $item = mysql_fetch_array( $result );

        return $item['user'];
   }


}

最佳答案

$this->Query($query);

未定义,因为它正在 SBan 类中查找查询方法(~function),该类到目前为止只有两个函数,__CONSTRUCT(这是一个特殊情况,我知道)和 SBanUser

您想从传递到 CONSTRUCT 的数据库对象中获取查询函数

将上面的行更改为:

  $this->db->Query($query);

现在应该可以了。

编辑:dbcon 变量保存数据库对象以及传递给脚本的数据库变量有点令人困惑。但我认为您的 db 对象位于 $db 变量中。

关于PHP: fatal error :调用未定义的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27944386/

相关文章:

mysql - Playframework 2.2 和 Heroku : Unable to connect to non-Heroku database

mysqldump更新表

mysql 将 auto_increment 字段从 null 更改为记录数

php - 将服务器字符集从 iso-8859-1 更改为 utf-8

Php include显示代码

php - 如何在 PHP 中对日期数组进行排序

mysql - 为网站存储数据数组的最佳方法?

php - 找不到数据库

php - Codeigniter 搜索不起作用

php - 内爆时复制 PHP 数组中的第一个值