【发布时间】:2021-03-17 11:49:44
【问题描述】:
我正在尝试通过产品控制器从数据库中传递一些数据,最后在产品视图中传递。 问题是我尝试了许多不同的情况,但没有任何效果。 简而言之,我想将客户的区域 ID 从 oc_address 表中检索到变量 $zone 上的产品页面中。
catalog\model\catalog\product.php(型号)
public function getZoneFromCustomer()
{
$zone = array();
$this->db->query("SELECT zone_id FROM " . DB_PREFIX . "address WHERE address_id = '". (int)$this->customer->getAddressId() ."'");
foreach ($query->rows as $result) {
$zone = $result['zone_id'];
}
return $zone;
}
目录\控制器\产品\product.php(控制器)
$data['zone'] = $this->model_catalog_product->getZoneFromCustomer();
catalog\view\theme\default\template\product\product.tpl(视图)
if(isset($zone))
{
echo $zone;
}
OpenCart 版本:2.0.3.1
Notice: Undefined variable: zone in ...
【问题讨论】:
-
错字?
$this->db-query与$this->db->query -
不应该
getZoneFromCustomer()返回一些东西吗? -
是的,抱歉,这是一个错字。我也试过 return $this->db->query("SELECT zone_id FROM " . DB_PREFIX . "address WHERE address_id = '6'");但没有任何改变
-
能否在
foreach循环上方添加$this->log->write(json_encode($query->rows));,调用后查看日志?
标签: php model-view-controller opencart2.x