gpt4 book ai didi

Magento : Can't add product to cart after order

转载 作者:行者123 更新时间:2023-12-04 08:55:59 25 4
gpt4 key购买 nike

下订单后,无法将产品添加到购物车。 Magento 一直告诉我:无法将商品添加到购物车。

另外,如果我尝试重新排序,则会出现错误:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1";i:1;s:2954:"#0 C:\wamp\www\ronamagento\trunk\lib\Zend\Db\Statement.php(300): Zend_Db_Statement_Pdo->_execute(Array)

如果我注销然后重新登录,一切正常,直到我下另一个订单。

任何的想法?

- - - - - - - - - - - 编辑 - - - - - - - - - - - - -
错误似乎来自 sales/order/controllers/OrderController.php ,在 $cart->save();
和 Checkout/controllers/CartController.php 中的相同代码 add 函数似乎我的购物车对象已损坏或其他什么。
- - - - - - - - - - - 编辑 - - - - - - - - - - - - -

---------------------- 编辑#2 ------------- -
好吧,如果我评论 $this->getQuote()->collectTotals();在 Checkout/model/cart.php 的保存功能中,它似乎可以工作,但没有显示该项目已添加到我的购物车中。然后我放回代码行,一切正常。似乎collectTotals()中有问题......
---------------------- 编辑#2 ------------- -

谢谢!

最佳答案

这很可能是由第 3 方模块引起的问题,可能是重写 Magento 模型或提供事件监听器(我的首选猜测),其中包含一些未转义的(可能是直接的,不使用 Magento ORM 基础设施)SQL 查询。

作为快速调试,我建议您尝试禁用(不是通过管理员,这不起作用,因为它只是取消渲染,而不是重写或事件监听器,而是通过重命名第三方模块的“app/etc/modules/[Module_Name ].xml”文件到类似“app/etc/modules/[Module_Name].xml.disabled”这样Magento忽略它)你拥有的每个第3方模块 - 一个接一个 - 直到你可以下订单。

一旦您确定了负责的模块,您可以通过在 SQL 查询中正确转义字符串来找到修复程序,或者返回模块制造商要求为您提供修复程序。

您也可以尝试使用 xdebug 进行适当的调试,但我强烈反对在生产环境中执行任何这些操作,因为您可能会导致中断。

请注意,使用未转义值的原始 SQL 查询是一种安全威胁,因为它可能导致 SQL 注入(inject)攻击。只需人们在您的网站上使用正确制作的 URL,您就可以轻松地窃取您的客户数据或入侵您的数据库。

关于Magento : Can't add product to cart after order,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8363710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com