【问题标题】:Opencart Code ErrorOpencart 代码错误
【发布时间】:2011-10-21 14:46:08
【问题描述】:

当我的客户尝试在 opencart 1.4.9.3 中更新产品时出现此错误:

2011-08-06 13:54:29 - PHP Notice:  Undefined index: quantity in /home/adesignlink/innovativetrailers4less.com/admin/model/catalog/product.php on line 198
2011-08-06 13:54:29 - PHP Notice:  Undefined index: subtract in /home/adesignlink/innovativetrailers4less.com/admin/model/catalog/product.php on line 198
2011-08-06 13:54:29 - PHP Notice:  Undefined index: price in /home/adesignlink/innovativetrailers4less.com/admin/model/catalog/product.php on line 198
2011-08-06 13:54:29 - PHP Notice:  Undefined index: price_full in /home/adesignlink/innovativetrailers4less.com/admin/model/catalog/product.php on line 198
2011-08-06 13:54:29 - PHP Notice:  Undefined index: prefix in /home/adesignlink/innovativetrailers4less.com/admin/model/catalog/product.php on line 198

这是模型文件: http://pastebin.com/VHL4BTLN

这里是控制器文件: http://pastebin.com/GT6YsFqt

我知道表单项正在通过控制器进入模型,但它没有将所有选项信息保存到数据库中。

【问题讨论】:

  • 看起来你的模型和控制器很好......这意味着它会是视图/模板中的格式错误的代码......基本上,模板没有传递数量,减法,价格,价格_full并将前缀作为 product_option_value_data 的一部分...。我看到您修改了模块以包含“price_full”...您可以发布模板吗?

标签: php opencart undefined-index


【解决方案1】:

这两个类都没有错!这是正在发生的事情。 您的控制器从 Model 类调用 editProduct 方法并传递来自模板页面的产品 ID 和 POST 数据。 Controller 类中的第 81 行:

$this->model_catalog_product->editProduct($this->request->get['product_id'], $this->request->post);

所以无论问题是什么,都与您的 POST 请求有关。 所有错误消息都来自该行中的 $product_option_value,它是 $product_option['product_option_value'] 的子数组,而 $product_option 来自 $data['product_option'],即 $this->request->post。 检查您的模板,看看您是否正确传递了产品选项。我建议你在你的服务器上安装 Xdebug 并尝试调试代码。只需在控制器的 81 处休息一下并检查值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-01
    • 2018-01-29
    • 2015-07-23
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    相关资源
    最近更新 更多