使用Paypal按钮-我的网页可以告诉我Paypal交易是否成功吗? [英] using paypal button - can my webpage tell if paypal transaction was successful or not?

查看:115
本文介绍了使用Paypal按钮-我的网页可以告诉我Paypal交易是否成功吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用joomla,并带来了一个组件,该组件使用户可以在我的网站上发布列表.该插件使用信用系统支付清单费用,但信用系统非常复杂且令人困惑,因此我已将其禁用.

I am using joomla and have brought a component which allows users to post listings on my site. The plugin uses a credit system to pay for the listing but the credit system is quite complex and confusing so i have disabled it.

我发现PayPal提供了一些代码,可以在任何网页上插入立即购买"按钮:)完美,正是我想要的!

I found that PayPal provides some code which inserts a Buy Now button on any webpage :) perfect, just what i wanted!

我唯一遇到的问题是此按钮现在显示在我的添加列表"表单(这也是该组件的一部分)上,但是只需单击表单的提交"按钮就可以轻松绕开它,这意味着列表可以无需付费即可发布.

The only problem I am having is at the moment the button is displayed on my Add Listing form (which is again part of the component) but it can easily be bypassed by just clicking on the form's submit button, meaning the listing can be published without having to pay.

所以我的问题是:

  1. 一旦用户单击立即购买按钮,就可以 将他们重定向回他们刚刚填写的添加列表"表单 出来吗?
  2. 我是否可以禁用表单上的提交"按钮,直到付款完毕 确认的?
  3. PayPal的立即购买"按钮是否返回任何信息 确认过程是否成功?
  1. Once the user clicks on the Buy It Now button is it possible to redirect them back to the 'Add Listing' form they were just filling out?
  2. Can I disable the submit button on the form until the payment has been confirmed?
  3. Does the PayPal 'Buy Now' button return any information confirming the process was successful?

我正在使用html + php:)

i am using html + php :)

我用来生成立即购买"按钮的代码是

the code i used to produce the buy now button is

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
    <input type="hidden" name="cmd" value="_xclick">
    <input type="hidden" name="business" value="smyacc@hotmail.com">
    <input type="hidden" name="lc" value="GB">
    <input type="hidden" name="item_name" value="listing-purchase">
    <input type="hidden" name="amount" value="2.99">
    <input type="hidden" name="currency_code" value="GBP">
    <input type="hidden" name="button_subtype" value="services">
    <input type="hidden" name="no_note" value="0">
    <input type="hidden" name="shipping" value="0.00">
    <input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHostedGuest">
    <input type="image" src="https://www.paypalobjects.com/en_US/GB/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_GB/i/scr/pixel.gif" width="1" height="1">
</form>

非常感谢您对此提供的任何帮助!

would really appreciate any help with this!!!

卢克

推荐答案

好消息-您的问题的答案基本上是.您的最终目标肯定是可行的,但是为了真正彻底解决您的问题,我们可能需要更多信息.

Good news - the answer to your questions is essentially yes. Your end goal is definitely doable, but in order to really solve your problem in its entirety, we may need a little bit more information.

具体情况视情况而定,但是不幸的是,自从我配置了这些按钮以来已经有一段时间了,所以请耐心;-)

How you go about it can vary from case to case, however, and unfortunately it's been a while since I configured these buttons, so bear with me ;-)

一旦用户单击立即购买按钮,是否可以将他们重定向回他们刚刚填写的添加列表表单?

once the user clicks on the buy it now button is it possible to redirect them back the the add listing form they were just filling out?

是的,这是PayPal内置于其按钮和流程中的非常标准的功能.您在这里寻找的是PayPal所说的返回URL"或自动返回".这是该页面,其中包含我引用的更多文档下面的,因此您可以确定返回URL"或自动返回"或付款数据转移"选项最适合您.

Yes, this is a very standard functionality that PayPal has built into their buttons and their process. What you are looking for here is what PayPal calls "Return URLs" or "Auto Return". Here's the page with more of the documentation I quoted below so you can decide whether the Return URL or the Auto Return or the Payment Data Transfer option is best suited for you.

退房后将买家带回您的网站

Returning buyers to your website after they check out

基本的结帐经验使买家可以在PayPal网站上 他们退房后.使用以下技术之一来增强 结帐体验,以便买家返回您的网站, 代替.

The basic checkout experience leaves buyers on the PayPal website after they check out. Use one of the following techniques to enhance the checkout experience so that buyers return to your website, instead.

返回网址:如果买方允许买家返回您网站上的页面, 点击PayPal付款确认页面上的返回链接或按钮.

Return URL: Allow buyers return to a page on your website if they click a return link or button on the PayPal payment confirmation page.

要了解更多信息,请参阅第3步:向其中添加高级功能下的#5 您的立即购买"按钮或用于显示PayPal结帐的HTML变量 页面.

To learn more, see item #5 under Step 3: Adding advanced features to your Buy Now button or HTML variables for displaying PayPal checkout pages.

自动退货:让PayPal自动将客户退回至的页面 您的网站.

Auto Return: Have PayPal return customers automatically to a page on your website.

重要提示:贝宝(PayPal)建议您打开付款数据传输" 当您打开自动返回"时.启用自动返回功能后,PayPal重定向 买家从备用PayPal付款确认中访问您的网站 页,不允许他们打印PayPal收据.付款资料 转账提供您需要允许的交易信息 买家从您的网站打印收据.

Important: PayPal recommends that you turn Payment Data Transfer on when you turn Auto Return on. With Auto Return on, PayPal redirects buyers to your website from an alternative PayPal payment confirmation page, which does not allow them to print PayPal receipts. Payment Data Transfer provides the transaction information that you need to allow buyers to print receipts from your website.

要了解更多信息,请参阅自动返回.

To learn more, see Auto Return.

付款数据传输:PayPal包含有关已完成的信息 使用返回URL或自动返回发送客户时进行的交易 回到您的网站.使用付款数据传输的信息 提供在您的网站上显示谢谢,打印收据"页面 网站.要了解更多信息,请参阅支付数据传输".

Payment Data Transfer: PayPal includes information about the completed transaction when you use a return URL or Auto Return to send customers back to your website. Use the information that Payment Data Transfer provides to display a "thank you, print your receipt" page on your website. To learn more, see the Payment Data Transfer.


问题,我可以在确认付款之前禁用表单上的提交"按钮吗?

Question Can I disable the submit button on the form until the payment has been confirmed?

当然.要在确认付款之前禁用表单上的提交"按钮,只需执行以下两项操作之一,直到您可以检测到付款已确认:

Certainly. To disable the submit button on the form until the payment has been confirmed, simply do one of two things until you can detect that the payment has been confirmed:

  1. 将已禁用"属性添加到提交"按钮.这将变灰并禁用提交"按钮,使其无法使用.但是,由于该按钮仍将是可见的,因此,精通网络的最终用户可能只是进入HTML并删除了禁用的属性,并且过着愉快的生活.

<button type="submit" disabled>Submit Listing</button>

  1. 隐藏提交"按钮.在这种情况下,精通网络的最终用户在技术上仍可以进入HTML并删除样式,以使按钮可见,但看不到它...嗯,您知道,看不见,心不在'"

<button type="submit" style="display:none">Submit Listing</button>

问题?PayPal的立即购买"按钮是否返回任何确认该过程成功的信息?

Question Does the PayPal 'Buy Now' button return any information confirming the process was successful?

同样,有几种攻击方法.

Again, there's a few ways of attacking this.

方法1 最简单的方法可能是使用贝宝返回URL和一些GET参数来告诉您事情是否完成或取消.诸如取消的返回URL和完成的返回URL之类的东西.在我链接的同一页面上,贝宝记录了与此功能有关的按钮的创建:

Method 1 The simplest way might be to use the PayPal Return URLs and some GET parameters to tell you whether or not things were completed or cancelled. There is something like a Return URL for Cancellations and a Return URL for Completions. From that same page that I linked, PayPal documents the creation of a button with respect to this feature:

取消结帐后,将买家带到特定的网页(URL) (可选)?

Take buyers to a specific webpage (URL) after checkout cancellation (optional)?

如果您有一个 您网站上的特殊页面,您希望买家在该页面返回 他们在完成交易前取消了结帐.

Select the checkbox and enter a URL in the text box if you have a special page on your website where you want buyers to return to if they cancel their checkouts before completing their transactions.

成功结帐后,将买家带到特定的网页(URL) (可选)?

Take buyers to a specific webpage (URL) after successful checkout (optional)?

如果您有一个 您网站上的特殊页面,您希望买家在之后返回 他们成功完成了结帐.

Select the checkbox and enter a URL in the text box if you have a special page on your website where you want buyers to return to after they complete checkout successfully.

方法2 ,更高级的方法(考虑到第一种方法,黑客可能会尝试猜测您的成功返回URL,这也更加安全)是使用PayPal的即时付款通知功能.使用此功能,PayPal将POST请求发送到私有(幕后)URL,该URL允许您捕获其发送给您的与付款完成有关的数据.

Method 2 The more advanced way (which is also more foolproof, given that in the first Method a hacker could try and guess your Successful Return URL) is using PayPal's Instant Payment Notification feature. With this feature, PayPal sends a POST request to a private (behind the scenes) URL which allows you to capture the data it sends you pertaining to the payment completion.

因此,您的后端会收到有关付款完成的信息,您可以通过多种方式(AJAX请求,要求用户刷新浏览器或向用户发送电子邮件告知他们回来并完成付款等)可以为用户更新前端,以便他们可以使用现在可见/已启用的提交"按钮.

So your backend receives the information on the completion of the payment, and there are countless ways (AJAX requests, require the user refresh the browser or send the user an email telling them to come back and finish it, etc) that you can go about updating the frontend for the user so that they can use the now visible/enabled Submit button.

对于有关PayPal notify_url的详细信息和文档通过其IPN系统.

For details and documentation on PayPal's notify_url through their IPN system.

祝你好运!

这篇关于使用Paypal按钮-我的网页可以告诉我Paypal交易是否成功吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆