2

我有一个带有下拉菜单的 paypal pay now 按钮,用户可以在其中选择 2 个不同的事件。

如何捕获下拉列表中选择的内容?我目前的表格不起作用。

<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="TFMANJVCMFZX4">
<input type="hidden" name="option_name1" value="Dinner/Show">
<input type="hidden" name="notify_url" value="http://mysite.com/ipn">
<label>Dinner/Show</label>
<select name="os0" id="paypalDropdown">
    <option value="Meal + Event">Meal + Event $15.00 USD</option>
    <option value="Event Only">Event Only $10.00 USD</option>
</select>
<input type="hidden" name="currency_code" value="USD">
<input id="paypalButton" type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">

更具体地说,我正在使用这个库 - https://github.com/orderly/codeigniter-paypal-ipn我正在记录变量并且所有的option_nameoption_selection变量都是空白的

4

4 回答 4

0

要使用字段os0,您还必须使用字段on0

在哪里:

on0 = 第一个选项字段名称。如果省略,则不会将任何变量传回给您。

.

- 祝你好运。

于 2013-01-09T13:27:18.513 回答
0

onchange="myFunction(this)"

这是整个对象,在 JavaScript 中可以这样访问

function myFunction(obj) {
    var dropDownValue = obj.value;
}

编辑:糟糕,只需阅读您的代码。可以像这样在 PHP 中访问选择值 :)

    echo $_POST['os0']; // the select fields name
于 2012-12-24T05:29:42.963 回答
0

看起来您正在尝试使用托管的贝宝按钮,但尚未在您的个人资料中定义任何配置。

您可能会收到此错误消息:“由于卖家网站出现问题,PayPal 无法处理此交易”

无需在上面的表单中捕获值,因为这是通过 paypal 帐户上的配置来处理的,如下所示:

  1. 登录到您的贝宝帐户
  2. 转到个人资料-> 销售偏好-> 我保存的按钮
  3. 编辑示例按钮(添加带有价格和选项的下拉菜单,例如 Meal + Event $15.00 USD、notify_url 等)
  4. 保存更改
  5. 选择自动生成的表单代码,无需任何更改即可使用
于 2013-01-06T02:51:50.317 回答
0

如果您有 IPN,那么 PayPal 将调用您为这一刻准备的 URL 并在付款后,paypal 将发送您需要的所有数据。从地址和货币到他购买的物品的名称和价格。所以你可以在那个时候得到它们。
否则,您必须编写一个 javascript 来捕获所选值并通过 ajax 将其发送到其他地方...

于 2012-12-24T05:39:57.133 回答