【问题标题】:Magento. Quantity in checkout shopping cart doesn't work properlyMagento。结帐购物车中的数量无法正常工作
【发布时间】:2014-01-21 19:09:42
【问题描述】:

我已经安装了 Magento 1.8.0,并且在 localhost 上,购物车工作正常。 我更改了购物车中产品的数量,然后按下“更新购物车”按钮,一切正常。 我在网上转移了网站,但购物车数量不再起作用。 当我更改产品的数量并单击按钮时,数量保持不变。如果我回去尝试将相同的产品添加到购物车中,即使我指定了不同的数量,例如 10 而不是 1,每次单击“添加到购物车”按钮时,购物车中只会添加 1 件商品,而不是10 按规定。 我无法弄清楚问题出在哪里。我排除了我的自定义主题并回滚到默认主题,问题仍然存在。 我将 magento 更新到 1.8.1 和同样的问题。

【问题讨论】:

    标签: magento


    【解决方案1】:

    在你的主题目录中

    在您的 /app/design/frontend/yourthemepackage/default/template/checkout/cart.phtml 文件或 /app/design/frontend/default/yourtheme/template/checkout/cart.phtml 文件中

    只需在 getUrl('checkout/cart/updatePost') 之后的第 50 行放置?>" method="post"> 粘贴以下代码

    <?php echo $this->getBlockHtml('formkey'); ?>
    

    现在可以正常使用了。

    附:有关更多信息,您可以在 http://magento-online-tutorials.blogspot.in/2015/11/shopping-cart-quantity-not-able-to.html 上查看相同的答案

    【讨论】:

      【解决方案2】:

      那些已经将 Magento 升级到 1.8 的人必须在

      中有以下行

      app\design\frontend\default\customtheme\template\checkout\cart.phtml

        <form action="<?php echo $this->getUrl('checkout/cart/updatePost') ?>" method="post">
          <?php echo $this->getBlockHtml('formkey'); ?>  // this line must be there
      

      【讨论】:

        【解决方案3】:

        这是两个设置的组合(系统 > 配置 > Web)。

        更改自:

        不安全

        • 基本网址:http://domain.name/
        • 基础链接地址:{{unsecure_base_url}}
        • 基础皮肤 URL:{{unsecure_base_url}}skin/
        • 基本媒体 URL:{{unsecure_base_url}}media/
        • 基本 JavaScript URL:{{unsecure_base_url}}js/

        安全

        • 基本网址:https://domain.name/
        • 基本链接 URL:{{secure_base_url}}
        • 基础皮肤 URL:{{secure_base_url}}skin/
        • 基础媒体 URL:{{secure_base_url}}media/
        • 基本 JavaScript URL:{{secure_base_url}}js/
        • 在前端使用安全 URL:YES
        • 在管理员中使用安全 URL:YES

        到:

        不安全

        • 基本网址:https://domain.name/
        • 基本链接 URL:{{secure_base_url}}
        • 基础皮肤 URL:{{secure_base_url}}skin/
        • 基础媒体 URL:{{secure_base_url}}media/
        • 基本 JavaScript URL:{{secure_base_url}}js/

        安全

        • 基本网址:https://domain.name/
        • 基本链接 URL:{{secure_base_url}}
        • 基础皮肤 URL:{{secure_base_url}}skin/
        • 基础媒体 URL:{{secure_base_url}}media/
        • 基本 JavaScript URL:{{secure_base_url}}js/
        • 在前端使用安全 URL:YES
        • 在管理员中使用安全 URL:YES

        最后,别忘了加上这个:

        <?php echo $this->getBlockHtml('formkey'); ?>
        

        ../template/checkout/cart.phtml 文件中的第 57 行 第二个设置适用于 Magento 1.8.1。 我很确定对于 Magento 1.8.0,我的域托管在安全 HTTPS 协议上的第一个设置就足够了。

        看起来很奇怪,但是在使用第一个站点配置时,购物车使用的 cookie 似乎有问题。 或者可能是重定向问题。

        【讨论】:

          【解决方案4】:

          您必须在 cart.phtml 文件中传递表单密钥才能解决此问题。

          app\design\frontend\yourpackage\yourtheme\template\checkout\cart.phtml

          您可以通过表单键传递

          <?php echo $this->getBlockHtml('formkey'); ?> 
          

          在表单标签之后。

          会是这样的

          <form action="<?php echo $this->getUrl('checkout/cart/updatePost') ?>" method="post">
          <?php echo $this->getBlockHtml('formkey'); ?>
          

          或在同一文件中的提交按钮之前

          <input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey(); ?>" >
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2021-09-02
            • 1970-01-01
            • 1970-01-01
            • 2015-04-19
            • 1970-01-01
            • 2017-02-18
            • 2014-11-09
            • 2021-04-29
            相关资源
            最近更新 更多