我正在构建简单的销售网站,任何用户(卖家)都可以上传照片并将其出售给其他用户(买家)
卖家需要在注册时写下他的PayPal账户,所以当买家订购图片时他会被转移到paypal网站,即使他没有使用PayPal来使用外部卡(当你用paypal付款时,你会经常看到该页面),当买方付款时将这些资金发送给卖方并将买方转回现场并确认付款。 当php确认付款时,他允许买家下载图片。
这可能,以及如何?
有人可以写我或简单的脚本或告诉我在哪里可以找到这个例子...... 它遍布网络,所以任何人都不应该这样......
谢谢!
答案 0 :(得分:1)
当他注册时,你不需要存储他的paypal帐户。
PayPal已在其支持部分写了大量信息。
查找PayPal IPN。
答案 1 :(得分:1)
这是第一步,创建表单,将其放在您想要的BUY按钮的位置,它可以在任何页面上,您可以通过PayPal站点上的按钮向导创建它,只需添加此notify_url隐藏输入。 您可以使用php输入金额,item_name,企业电子邮件,自定义...来编辑这些字段。
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="any-email-you-want@domain.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="item_name" value="Item Name">
<input type="hidden" name="item_number" value="150">
<input type="hidden" name="amount" value="100.00">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="button_subtype" value="services">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="no_shipping" value="1">
<input type="hidden" name="tax_rate" value="0.000">
<input type="hidden" name="shipping" value="0.00">
<input type="hidden" name="custom" value="user_id_goes_here">
<input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHosted">
<input type="hidden" name="notify_url" value="http://checking-url-goes-here/file.php">
<input type="image" src="https://www.sandbox.paypal.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.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
第二步,检查是有效付款,file.php(或您在上面表格中的notify_url隐藏输入中指定的任何文件URL):
<?php
$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
$header .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('ssl://www.paypal.com', 443, $errno, $errstr, 30);
if (!$fp) {
//ERROR READING PAGE - CODE ERROR
} else {
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {
//VALID CODE, DO WHATEVER YOU WANT WITH IT HERE, PAYMENT IS CONFIRMED...
}
else if (strcmp ($res, "INVALID") == 0) {
//INVALID CODE
}
}
?>
你可以在里面测试这段代码: https://developer.paypal.com/ (贝宝沙盒) 只需替换
www.paypal.com
与
www.sandbox.paypal.com
(你可以在两个地方找到它。)
就是这样......
我在问这个方向,没有人想要我这里...
我对这个问题的评分甚至达到了2分,但是这些缺点都不足以让我把这些例子写给我,就像我要求的那样......
我是那个值得贬低的人?
(我希望有人会发现这些例子很有用)