opencart获取所有可下载的文件

时间:2017-07-14 18:47:08

标签: php mysql opencart opencart2.x opencart2.3

我试图获取并显示产品页面中的所有可下载文件。这是我的代码:

模型:

public function download_m($product_id) {
    $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_download WHERE product_id = '" . (int)$product_id . "'");
    if ($query->num_rows) {
      return array(
        'product_id'       => $query->row['product_id'],        
        'download_id'      => $query->row['download_id']
      );
    } 
}

控制器:

$download_m = $this->model_catalog_product->download_m($product_id);

查看:

print_r($download_m)

数据库:

enter image description here

如您所见,有两个可下载的商品,其中product_id 95 ,但它只返回3而不是3,4。我错了什么?

2 个答案:

答案 0 :(得分:2)

尝试此代码以获得您想要的结果

$return_result=array();
if ($query->num_rows) {
  foreach ($query->rows as $result) {
    $return_result[]=array(
      'product_id'       => $result['product_id'],        
      'download_id'      => $result['download_id']
    );
 }
} 
return $return_result;

答案 1 :(得分:0)

对每个结果使用循环。

if ($query->num_rows) {
    foreach ($query->rows as $result) {
        return array(
          'product_id'       => $result['product_id'],        
          'download_id'      => $result['download_id']
        );
     }
} 

您可以在Opencart文件中的任何位置检查此类代码。