我在opencart的付款成功页面上收到以下错误。
Notice: Indirect modification of overloaded property ModelCheckoutOrder::$data has no effect in /srv/www/example.com/public_html/catalog/model/checkout/order.php on line 500
Notice: Indirect modification of overloaded property ModelCheckoutOrder::$data has no effect in /srv/www/example.com/public_html/catalog/model/checkout/order.php on line 501
那些500& 501行,
$this->data['payment_firstname'] = $order_info['payment_firstname'];
$this->data['payment_lastname'] = $order_info['payment_lastname'];
如果我刷新页面,它就会消失。知道为什么会出现这个错误吗?
答案 0 :(得分:2)
模型文件没有$data
属性。那是控制器。这是您收到此错误的原因,因为代码正在尝试将值设置为不存在的属性
答案 1 :(得分:1)
首先你要创建该属性。 例如。在验证期间,在您的班级顶部声明:
private $error = array();
答案 2 :(得分:0)
更改 代码:
$这 - >数据
要 代码:
$数据
答案 3 :(得分:-1)
$data['payment_firstname'] = $order_info['payment_firstname'];
$data['payment_lastname'] = $order_info['payment_lastname'];