【问题标题】:How to add multiple add to cart buttons on one form如何在一个表单上添加多个添加到购物车按钮
【发布时间】:2013-08-09 02:42:36
【问题描述】:

我有 16 种产品,所有这些产品都分配有单独的添加到购物车按钮。当客户输入他们想要的数量然后点击添加到购物车时,产品被添加到购物车中,客户被引导到相应的贝宝购物车。我想知道是否有一种方法可以执行相同的操作而不必为每个产品制作单独的按钮?

这是我的一个按钮的代码:

<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
                        <input type="hidden" name="cmd" value="_s-xclick">
                        <input type="hidden" name="hosted_button_id" value="93XBL9HZ8D5MG">
                        <table>
                        <tr><td><input type="hidden" name="add" value="1"></td></tr><tr><td>
                        <input type="hidden" name="item_name" value="AR.VIN.001 - Unframed">
                        Qty <input type="text" name="quantity" maxlength="5" value="1" style="position: relative; width:30px; height: 23px; top: 25px; left: 35px;">

                            </table>
                        <input type="image" src="./img/button.gif" border="0" name="submit" alt="PayPal – The safer, easier way to pay online."  style="position:relative; left: 50px; top: 0px;">
                        <img alt="" border="0" src="https://www.paypalobjects.com/en_GB/i/scr/pixel.gif" width="1" height="1">
                    </form>'

【问题讨论】:

  • 我不确定我是否理解。您确定每个项目都需要一个按钮吗?否则,您将如何识别用户将哪个商品添加到购物车?
  • 你能显示你使用的代码吗?您可以将所有输入粘贴在相同的形式中吗?然后,当单击一个提交按钮时,它将提交整个表单。
  • @MartinBean 您不能使用指定金额的输入字段,为产品命名。虽然没有看到一些代码,但不确定贝宝购物车是如何工作的。
  • 它可以与单个按钮完美配合,但是,我担心的是当我拥有 50 多种产品时会造成不便。我想知道是否有办法让像 1 添加到购物车按钮并修改它以将不同的项目添加到购物车。
  • 您的意思是说,用户只需单击一下就会被重定向到贝宝,其中包含所有产品的数据

标签: php html paypal


【解决方案1】:

您的标题和问题似乎有不同的含义,所以我将回答您的标题查询(如何在一个表单上添加多个添加到购物车按钮)。

简单的答案是你不知道。但是你可以模拟这样做,我可以想到两种方法,一种用javascript,另一种用php。

PHP方式:

将所有添加到购物车的按钮链接到index.php?action=add&amp;product_id=4,并且不要在该页面上显示贝宝表单。在相应的页面中,您根据产品 ID 和您要发送的任何信息生成贝宝重定向表单,然后使用 javascript 提交。理想情况下,您还应该制作一个计时器,并添加一条消息,例如:“您将在 5 秒内被重定向到 PayPal。如果没有,请单击下面的链接”。

Javascript方式:

页面上存在 paypal 表单,但要隐藏。然后,在添加到购物车按钮上添加一个onclick 操作,根据单击的按钮更改贝宝表单输入值,然后使用 javascript 提交。


就个人而言,我更喜欢 PHP 方式,因为您拥有更多控制权。例如,您可以在重定向到 PayPal 之前保存订单,但这也取决于您的需要。 javascript 方式更像是一种 hack,而不是一种解决方案。

【讨论】:

    【解决方案2】:

    我想我明白你在寻找什么。我假设所有产品都采用单一形式。你可以使用

    <input type="checkbox" name="productName" value="productId">
    

    将此添加到页面上的每个产品项。

    然后添加一个按钮以仅将所选商品添加到购物车。

    <button type="submit">Add Selected Items to Cart</button>
    

    表单数据现在应该只包含选定的产品。否则,您可以使用 javascript 遍历所选项目并将其 ajax 到服务器。

    没关系,这个问题是 4 年前提出的。我偶然发现它正在寻找添加到购物车的实现。希望有人觉得它有帮助。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-06
      • 1970-01-01
      • 2019-08-22
      • 1970-01-01
      • 1970-01-01
      • 2015-12-04
      相关资源
      最近更新 更多