0

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

模型:

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)

数据库:

在此处输入图像描述

如您所见,有两个 product_id 为95的可下载项目,但它只是返回3not 3,4。我做错了什么?

4

2 回答 2

3

尝试此代码以获得所需的结果

$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;
于 2017-07-15T03:05:05.173 回答
0

像这样对每个结果使用循环。

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

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

于 2017-07-14T20:05:19.883 回答