paypal - Opencart:使用澳大利亚各州预填充 Paypal 州字段

标签 paypal opencart

opencart 1.5.5.1 和 paypal 标准存在一些问题。我正在使用 Paypal.com.au(在澳大利亚)当我开始时,没有电话,也没有状态从 opencart 传递到 paypal。其余字段(地址、电子邮件、姓名)都已预先填充。所以我进入了 paypayl 标准代码并将其添加到 Controller 中:

$this->data['night_phone_b'] = html_entity_decode($order_info['telephone'], ENT_QUOTES, 'UTF-8');

并将此添加到 tpl 文件中:

<input type="hidden" name="night_phone_b" value="<?php echo $night_phone_b; ?>" />

这适用于电话,但是,无论我对状态进行何种尝试,我都无法使其正常工作。我看着做这样的事情:

$this->data['state'] = html_entity_decode($order_info['payment_zone_code'], ENT_QUOTES, 'UTF-8');

与上面相同,但将 ['payment_zone_code'] 替换为 ['payment_zone_id']['zone_id']

在 tpl 文件中:

<input type="hidden" name="state" value="<?php echo $state; ?>" />

无论如何,我很难将状态传递给 paypal。

编辑 在 paypal 的澳大利亚网站上查看:https://www.paypal.com/au/cgi-bin/webscr?cmd=_pdn_xclick_prepopulate_outside 他们也不在这个问题上提供任何帮助,所有示例都是针对美国各州的:“州(必须是 2 个字符的官方缩写)”,对 3 个字符的缩写没有任何帮助。还在等待他们的回复

最佳答案

好像可以通过一个澳大利亚州的全名(Paypal 买家详细信息选择表单上的值,而不是可见的内容)

这感觉有点狡猾,但对我有用。希望 Paypal 不会改变任何东西......

    $states['ACT'] = "Australian Capital Territory";
$states['NSW'] = "New South Wales";
$states['NT'] = "Northern Territory";
$states['QLD'] = "Queensland";
$states['SA'] = "South Australia";
$states['TAS'] = "Tasmania";
$states['VIC'] = "Victoria";
$states['WA'] = "Western Australia";

然后将“billing_region”而不是状态作为表单的一部分传递...

'billing_region' => $state[$fdata['u_state']]

关于paypal - Opencart:使用澳大利亚各州预填充 Paypal 州字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16805443/

相关文章:

asp.net-mvc-3 - 带有 MVC3 ASP.NET 的 PayPal PayFlow

php - Paypal IPN 更改数据?

c# - 将 Paypal 与 wpf 应用程序中的链接集成

php - opencart 1.4.9.3 mysql 未知列报错

javascript - 如何在 opencart 2.1 中删除注册帐户表单中的电子邮件验证?

flutter - flutter 中的 Paypal 集成

Paypal 错误 : "an id of zero was passed to PartyPostalAddressPBImpl::load_by_id"

apache - OpenCart 3.0.2.0 - 强制 SSL 并修复 "www".htaccess

php - 登录后Opencart登录到上一个查看的页面?

.htaccess - 当人们访问网站商店时如何强制非 www