paypal即时到账php实现代码


Posted in PHP onNovember 28, 2010

http://paypal.ebay.cn/integrationcenter/list__resource_2.html

中文php开发简介:http://www.paypal-china.org/wangzhai/197.html
以下是ecshop中paypal的支付代码

这段代码是向paypal支付接口提交的
{{{

<form target="_blank" method="post" action="https://www.paypal.com/cgi-bin/webscr" style="text-align: center;"><input type="hidden" value="_xclick" name="cmd"/><input type="hidden" value="xfuajiao@hotmail.com" name="business"/> //商家注册的邮箱
<input type="hidden" value="2009102370175" name="item_name"/><input type="hidden" value="2888.00" name="amount"/><input type="hidden" value="USD" name="currency_code"/><input type="hidden" value="http://127.0.0.1/ecshop/respond.php?code=paypal" name="return"/><input type="hidden" value="3" name="invoice"/><input type="hidden" value="utf-8" name="charset"/><input type="hidden" value="1" name="no_shipping"/><input type="hidden" value="" name="no_note"/><input type="hidden" value="http://127.0.0.1/ecshop/respond.php?code=paypal" name="notify_url"/><input type="hidden" value="2" name="rm"/><input type="hidden" value="http://127.0.0.1/ecshop/" name="cancel_return"/><input type="submit" value="立即使用 paypal 支付"/></form>

}}}

以下是官方提供的,接受到paypal传回来的参数的,并且判断是否支付成功。

支持成功后由于提交表单中有

<input type="hidden" value="http://127.0.0.1/ecshop/respond.php?code=paypal" name="return"/>

paypal将会主动跳转到espond.php?code=paypal这个页面,页面可现实以下POST得到的一些数据。

// read the post from PayPal system and add 'cmd' 
$req = 'cmd=_notify-validate'; foreach ($_POST as $key => $value) { 
$value = urlencode(stripslashes($value)); 
$req .= "&$key=$value"; 
} 
// post back to PayPal system to validate 
$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); 
// assign posted variables to local variables 
$item_name = $_POST['item_name']; 
$item_number = $_POST['item_number']; 
$payment_status = $_POST['payment_status']; 
$payment_amount = $_POST['mc_gross']; 
$payment_currency = $_POST['mc_currency']; 
$txn_id = $_POST['txn_id']; 
$receiver_email = $_POST['receiver_email']; 
$payer_email = $_POST['payer_email']; 
if (!$fp) { 
// HTTP ERROR 
else { 
fputs ($fp, $header . $req); 
while (!feof($fp)) { 
$res = fgets ($fp, 1024); 
if (strcmp ($res, "VERIFIED") == 0) { 
// check the payment_status is Completed 
// check that txn_id has not been previously processed 
// check that receiver_email is your Primary PayPal email 
// check that payment_amount/payment_currency are correct 
// process payment 
} 
else if (strcmp ($res, "INVALID") == 0) { 
// log for manual investigation 
} 
} 
fclose ($fp); 
} 
?>
PHP 相关文章推荐
第4章 数据处理-php正则表达式-郑阿奇(续)
Jul 04 PHP
检查php文件中是否含有bom的函数
May 31 PHP
有关于PHP中常见数据类型的汇总分享
Jan 06 PHP
memcache命令启动参数中文解释
Jan 13 PHP
php+mysqli使用面向对象方式查询数据库实例
Jan 29 PHP
php上传图片客户端和服务器端实现方法
Mar 30 PHP
php解析字符串里所有URL地址的方法
Apr 03 PHP
Laravel 5框架学习之Eloquent 关系
Apr 09 PHP
php注册和登录界面的实现案例(推荐)
Oct 24 PHP
php常用正则函数实例小结
Dec 29 PHP
PHP批量删除jQuery操作
Jul 23 PHP
TP5框架简单登录功能实现方法示例
Oct 31 PHP
解析PayPal支付接口的PHP开发方式
Nov 28 #PHP
php购物网站支付paypal使用方法
Nov 28 #PHP
IP攻击升级,程序改进以对付新的攻击
Nov 23 #PHP
php下封装较好的数字分页方法
Nov 23 #PHP
php下使用iconv需要注意的问题
Nov 20 #PHP
批量修改RAR文件注释的php代码
Nov 20 #PHP
为PHP初学者的8点有效建议
Nov 20 #PHP
You might like
php学习之数据类型之间的转换介绍
2011/06/09 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
CSS和Javascript简单复习资料
2010/06/29 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
使用Jquery打造最佳用户体验的登录页面的实现代码
2011/07/08 Javascript
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
2012/11/14 Javascript
JS动态修改iframe高度和宽度的方法
2015/04/01 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
freemarker判断对象是否为空的方法
2015/08/13 Javascript
JQuery中Ajax()的data参数类型实例分析
2015/12/15 Javascript
JS类的定义与使用方法深入探索
2016/11/26 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
2018/01/12 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
webstrom Debug 调试vue项目的方法步骤
2018/07/17 Javascript
详解nvm管理多版本node踩坑
2019/07/26 Javascript
BootstrapValidator实现表单验证功能
2019/11/08 Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
2020/08/20 Javascript
原生小程序封装跑马灯效果
2020/10/21 Javascript
写一个Vue loading 插件
2020/11/09 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
PyCharm MySQL可视化Database配置过程图解
2020/06/09 Python
css3 实现元素弧线运动的示例代码
2020/04/24 HTML / CSS
Html5实现移动端、PC端 刮刮卡效果
2016/06/30 HTML / CSS
描述RIP和OSPF区别以及特点
2015/01/17 面试题
前台接待的工作职责
2013/11/21 职场文书
计算机相关的自我评价
2014/01/15 职场文书
《秋姑娘的信》教学反思
2014/02/28 职场文书
个人党性锻炼总结
2015/03/05 职场文书
Win11怎么解除儿童账号限制?Win11解除微软儿童账号限制方法
2022/07/07 数码科技
windows系统搭建WEB服务器详细教程
2022/08/05 Servers