Paypal支付和自动数字媒体下载

时间:2011-12-28 14:39:00

标签: xhtml download paypal payment-gateway

我正在创建一个网站,在那里我将销售计算机和计算器程序。按下“购买”按钮。我希望用户被引导到Paypal(无论他们是否留在网站上)。付款后,用户将被带回我的网站,程序将自动下载。

我该怎么做才能确保:

  • 用户通过Paypal正确支付该程序
  • 之后为付费下载的正确程序
  • 该程序没有直接链接,因此用户可以多次下载而无需付费。

非常感谢你!

1 个答案:

答案 0 :(得分:4)

Paypal PDT(付款后重定向)和IPN(幕后)正如您所追求的那样。

检查一下: https://www.paypal.com/cgi-bin/webscr?cmd=p/xcl/rec/pdt-intro-outside

以下是让您立即开始使用的脚本示例代码:

https://www.paypal.com/us/cgi-bin/?cmd=p/xcl/rec/pdt-code-outside

一些额外的安全提示: 使用数据库的数据验证金额,货币和产品ID,以使下载可用。打开paypal沙盒帐户。

不要透露下载位置: 使用pdt验证的order-id作为唯一的下载标识符。您必须使用这样的脚本:在此处重定向pdt脚本中的用户,或者如果付款已经过验证,则将其包含在pdt中:

<?
$orderid = $_GET['orderid'];
$productid = $_GET['productid'];
$time = $_GET['time_from_paypal']; // when the purchase was made
$fn = "files/".$productid.".mp3";
($time =here your conditional)?$do==true:$do==false;
if ($do==true){
header('Content-Disposition: attachment; filename=' . basename($fn));
readfile($fn);
} else {.....
?>

部分“这里你的条件”可以是任何东西。您可以限制他们在付款后的x秒内下载。通常来自paypal的处理最多需要20秒。因此,如果您只想进行一次下载,请检查payment_time和实际时间是否发散不到30秒。由于重定向,用户在付款后立即获得下载。 写了但未经过测试