2017-08-18 18 views
0

私はOpenCart v3では製品ページに各製品の販売台数を表示しようとしているが、私は次のエラーを得続けるが表示単位

私がこれまで持っている

Fatal error: Uncaught Error: Call to a member function getUnitsSold() on null in /Applications/XAMPP/xamppfiles/htdocs/store/catalog/controller/product/product.php:157 Stack trace: #0 /Applications/XAMPP/xamppfiles/htdocs/store/system/engine/action.php(79): ControllerProductProduct->index() #1 /Applications/XAMPP/xamppfiles/htdocs/store/catalog/controller/startup/router.php(25): Action->execute(Object(Registry)) #2 /Applications/XAMPP/xamppfiles/htdocs/store/system/engine/action.php(79): ControllerStartupRouter->index() #3 /Applications/XAMPP/xamppfiles/htdocs/store/system/engine/router.php(67): Action->execute(Object(Registry)) #4 /Applications/XAMPP/xamppfiles/htdocs/store/system/engine/router.php(56): Router->execute(Object(Action)) #5 /Applications/XAMPP/xamppfiles/htdocs/store/system/framework.php(168): Router->dispatch(Object(Action), Object(Action)) #6 /Applications/XAMPP/xamppfiles/htdocs/store/system/startup.php(104): require_once('/Applications/X...') #7 /Applications/XAMPP/xamppfiles/htdocs/store/index.php(19): in /Applications/XAMPP/xamppfiles/htdocs/store/catalog/controller/product/product.php on line 157

OpenCartv3

カタログ/モデル/カタログ/ product.php

public function getUnitsSold($product_id) { 
    $query = $this->db->query("SELECT SUM(op.quantity) AS total FROM `" . DB_PREFIX . "order_product` op LEFT JOIN `" . DB_PREFIX . "order` o ON (op.order_id = o.order_id) WHERE o.order_status_id > '0' AND op.product_id = '" . (int)$product_id . "'"); 
if ($query->row) { 
     return $query->row['total']; 
    } else { 
     return FALSE; 
    } 
} 

及びカタログ/コントローラ/製品/ product.phpで

$data['text_units_sold'] = $this->language->get('text_units_sold'); 
$this->data['units_sold'] = $this->model_catalog_product->getUnitsSold($product_id); 

誰でも問題とその解決策を検出できます。

ありがとうございました。

答えて

0

私はあなたがgetUnitsSoldを呼び出している関数の中で、あなたはそれが動作

$this->load->model('catalog/product'); 
+0

を行っていないと思われます!ありがとう、本当にありがとう。私は何時間も私の脳を傷つけています。 –

関連する問題