首页 > 解决方案 > 已弃用:非静态方法 Category::objdb() 不应在第 246 行的 /home4/muqit117/kharredo.com/admin/models/Category.php 中静态调用

问题描述

一切正常,除了这个错误显示在我的页面上。当我添加一个产品时,它显示一次,当我添加 2 时,它显示 2。该产品也添加成功。

public static function get_commissions($category_id, $product_id){

        $obj_db = self::objdb(); //here on this line error comes
        $query = "SELECT * FROM category WHERE id=$category_id";
        $result = $obj_db->query($query);

        if($obj_db->errno){
            throw new Exception("Query Processing Error");
        }

        $data = $result->fetch_assoc(); 
        $commission = $data['commission'];

        $query = "SELECT price, user_id FROM products WHERE id=$product_id";

        $result = $obj_db->query($query);

        if($obj_db->errno){
            throw new Exception("Query Processing Error");
        }

        $data = $result->fetch_assoc();

        $user_id = $data['user_id'];
        $price = $data['price'];    

        if($user_id){
            $commission = array(
                'kharredo' => (($price*$commission)/100),
                'seller' => ($price - (($price*$commission)/100))
            );
            return $commission;
        }else{
            $commission = array(
                'kharredo' => $price,
                'seller' => $price
            );
            return $commission;
        }
    }
}

你可以看到那张图片在此处输入图像描述

这是您可以在其中看到的 objdb 函数

protected function objdb() {
    $obj_db = new mysqli;
    $obj_db->connect("localhost", "user", "password");
    if($obj_db->connect_error){
        throw new Exception("DATA BASE connection error");
    }
    $obj_db->select_db("muqit117_kharredo.com");
    if($obj_db->errno){
        throw new Exception("DATABASE error");
    }
    return $obj_db;
}

标签: phpclass

解决方案


推荐阅读