PHP在线支付

php网站如何做个页面接入网银在线支付接口?

=>有两个是用来接收网银在线的反馈传递页面(这两个页面一般是进行下面的第四步)
一个是配置文件
一个是网银在线的一些函数(一般不需要修改)
1 先做商品支付页面
2 用户确定提交订单(同时本地写入数据库一个唯一的订单号,并设定成未支付状态)
3.提交订单到网银在线支付页面
4用户支付成功后返回网站操作页面(对用户进行操作,数据中的当前订单更改成已支付)

 

支付宝:

网址:https://b.alipay.com/order/productDetail.htm?productId=2012111200373124&tabId=4#ps-tabinfo-hash

=》您申请的产品需要通过技术开发才能在您的网站上使用,请点此下载集成开发包

            ╭───────────────────────╮     ────┤           支付宝代码示例结构说明             ├────             ╰───────────────────────╯                                                                            接口名称:支付宝即时到账批量退款有密接口(refund_fastpay_by_platform_pwd)        代码版本:3.3          开发语言:PHP          版    权:支付宝(中国)网络技术有限公司         制 作 者:支付宝商户事业部技术支持组          联系方式:商户服务电话0571-88158090

    ─────────────────────────────────

───────  代码文件结构 ───────

refund_fastpay_by_platform_pwd-php-UTF-8   │   ├lib┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈类文件夹   │  │   │  ├alipay_core.function.php ┈┈┈┈┈┈支付宝接口公用函数文件   │  │   │  ├alipay_notify.class.php┈┈┈┈┈┈┈支付宝通知处理类文件   │  │   │  ├alipay_submit.class.php┈┈┈┈┈┈┈支付宝各接口请求提交类文件   │  │   │  └alipay_md5.function.php┈┈┈┈┈┈┈支付宝接口MD5函数文件   │   ├log.txt┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈日志文件   │   ├alipay.config.php┈┈┈┈┈┈┈┈┈┈┈┈基础配置类文件   │   ├alipayapi.php┈┈┈┈┈┈┈┈┈┈┈┈┈┈支付宝接口入口文件   │   ├notify_url.php ┈┈┈┈┈┈┈┈┈┈┈┈┈服务器异步通知页面文件   │   ├cacert.pem ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈用于CURL中校验SSL的CA证书文件   │   └readme.txt ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈使用说明文本

※注意※

1、必须开启curl服务 (1)使用Crul需要修改服务器中php.ini文件的设置,找到php_curl.dll去掉前面的";"即可 (2)文件夹中cacert.pem文件请务必放置到商户网站平台中(如:服务器上),并且保证其路径有效,提供的代码demo中的默认路径是当前文件夹下——getcwd().'\\cacert.pem'

2、需要配置的文件是: alipay.config.php alipayapi.php

●本代码示例(DEMO)采用fsockopen()的方法远程HTTP获取数据、采用DOMDocument()的方法解析XML数据。

请根据商户网站自身情况来决定是否使用代码示例中的方式—— 如果不使用fsockopen,那么建议用curl来代替; 如果环境不是PHP5版本或其以上,那么请用其他方法代替DOMDocument()。

curl、XML解析方法需您自行编写代码。

─────────  类文件函数结构 ─────────

alipay_core.function.php

function createLinkstring($para) 功能:把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串 输入:Array  $para 需要拼接的数组 输出:String 拼接完成以后的字符串

function createLinkstringUrlencode($para) 功能:把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串,并对参数值urlencode 输入:Array  $para 需要拼接的数组 输出:String 拼接完成以后的字符串

function paraFilter($para) 功能:除去数组中的空值和签名参数 输入:Array  $para 签名参数组 输出:Array  去掉空值与签名参数后的新签名参数组

function argSort($para) 功能:对数组排序 输入:Array  $para 排序前的数组 输出:Array  排序后的数组

function logResult($word='') 功能:写日志,方便测试(看网站需求,也可以改成存入数据库) 输入:String $word 要写入日志里的文本内容 默认值:空值

function getHttpResponsePOST($url, $cacert_url, $para, $input_charset = '') 功能:远程获取数据,POST模式 输入:String $url 指定URL完整路径地址       String $cacert_url 指定当前工作目录绝对路径       Array  $para 请求的数据       String $input_charset 编码格式。默认值:空值 输出:String 远程输出的数据

function getHttpResponseGET($url, $cacert_url) 功能:远程获取数据,GET模式 输入:String $url 指定URL完整路径地址       String $cacert_url 指定当前工作目录绝对路径 输出:String 远程输出的数据

function charsetEncode($input,$_output_charset ,$_input_charset) 功能:实现多种字符编码方式 输入:String $input 需要编码的字符串       String $_output_charset 输出的编码格式       String $_input_charset 输入的编码格式 输出:String 编码后的字符串

function charsetDecode($input,$_input_charset ,$_output_charset) 功能:实现多种字符解码方式 输入:String $input 需要解码的字符串       String $_output_charset 输出的解码格式       String $_input_charset 输入的解码格式 输出:String 解码后的字符串

┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉

function md5Sign($prestr, $key) 功能:MD5签名 输入:String $prestr 待签名数据       String $key 私钥 输出:String 签名结果

function md5Verify($prestr, $sign, $key) 功能:MD5验签 输入:String $data 待签名数据       String $sign 签名结果       String $key 私钥 输出:bool 验证结果 ┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉

alipay_notify.class.php

function verifyNotify() 功能:对notify_url的认证 输出:Bool  验证结果:true/false

function verifyReturn() 功能:对return_url的认证 输出:Bool  验证结果:true/false

function getSignVeryfy($para_temp, $sign) 功能:获取返回时的签名验证结果 输入:Array $para_temp 通知返回来的参数数组       String $sign 支付宝返回的签名结果 输出:Bool 获得签名验证结果

function getResponse($notify_id) 功能:获取远程服务器ATN结果,验证返回URL 输入:String $notify_id 通知校验ID 输出:String 服务器ATN结果

┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉

alipay_submit.class.php

function buildRequestMysign($para_sort) 功能:生成要请求给支付宝的参数数组 输入:Array $para_sort 已排序要签名的数组 输出:String 签名结果

function buildRequestPara($para_temp) 功能:根据反馈回来的信息,生成签名结果 输入:Array $para_temp 请求前的参数数组 输出:String 要请求的参数数组

function buildRequestParaToString($para_temp) 功能:根据反馈回来的信息,生成签名结果 输入:Array $para_temp 请求前的参数数组 输出:String 要请求的参数数组字符串

function buildRequestForm($para_temp, $method, $button_name) 功能:建立请求,以表单HTML形式构造(默认) 输入:Array $para_temp 请求前的参数数组       String $method 提交方式。两个值可选:post、get       String $button_name 确认按钮显示文字 输出:String 提交表单HTML文本

function buildRequestHttp($para_temp) 功能:建立请求,以模拟远程HTTP的POST请求方式构造并获取支付宝的处理结果 输入:Array $para_temp 请求前的参数数组 输出:String 支付宝处理结果

function buildRequestHttpInFile($para_temp, $file_para_name, $file_name) 功能:建立请求,以模拟远程HTTP的POST请求方式构造并获取支付宝的处理结果,带文件上传功能 输入:Array $para_temp 请求参数数组       String $file_para_name 文件类型的参数名       String $file_name 文件完整绝对路径 输出:String 支付宝返回处理结果

function query_timestamp() 功能:用于防钓鱼,调用接口query_timestamp来获取时间戳的处理函数 输出:String 时间戳字符串

┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉

──────────  出现问题,求助方法 ──────────

如果在集成支付宝接口时,有疑问或出现问题,可使用下面的链接,提交申请。 https://b.alipay.com/support/helperApply.htm?action=supportHome 我们会有专门的技术支持人员为您处理。

 

 

网银在线银行卡在线支付网关

 银行卡在线支付=》

商户系统设计人员、编程人员及测试人员。该人员需要具备一定的网站开发能力,了解JAVA、ASP、PHP、ASP.NET等开发语言中的一种,并对信息安全有一定的认识。

名词

解释

商户

指已注册成为网银在线用户、并使用网银在线产品实现其收付费功能需求、为其用户提供各类产品或者相关服务的企业或个人。

消费者

指在商户网站等系统购物的企业或个人。

购物

指消费者在商户网站购买相关产品或服务。

掉单

网银在线管理后台,订单是支付成功状态,商户自己网站后台是未支付状态。两个后台订单状态不一致的现象称为掉单。

服务器异步通知功能

网银在线服务器异步方式发送支付结果给商户网站。能够解决掉单。对应AutoReceive程序示例。

相关资源:

支付流程演示链接   http://chinabank.com.cn/aminute/

户管理登录地址:https://merchant3.chinabank.com.cn

网银在线 : http://www.chinabank.com.cn/gateway/help.html 

支付平台网关接口地址:https://pay3.chinabank.com.cn/PayGate

登陆网银在线商户后台 https://merchant3.chinabank.com.cn/login.do

网银在线官网地址:http://www.chinabank.com.cn

B2C银行卡支付的接口文档:http://www.chinabank.com.cn/gateway/chinabank.zip

 

银联在线支付:

文档和接口下载地址: https://online.unionpay.com/mer/doc/viewDoc.action   ---php接口开发包 (并附有“银联在线支付(UPOP) ECSHOP支付插件”)

 

 

转载于:https://www.cnblogs.com/lbs8/p/3750693.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575439.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS中的层叠性、继承性、优先级、权重

css三大特性: 三大特性:层叠性、继承性、优先级 层叠性: 指多种css样式的叠加,是浏览器处理多种css样式冲突的能力,如果给一个元素通过不同或者相同的选择器设置相同的属性但属性值不同时,权重相同的情况…

struts2线程安全

struts2线程安全 2012-02-16 21:07:58分类: 系统运维 问题:Struts 2 Action对象为每一个请求产生一个实例,因此没有线程安全问题。Spring的Ioc容器管理的bean默认是单实例的,上一次请求处理的状态信息被保持下来,并影响了下一次的…

Nifi 怀疑出个bug 流程中的实时数据结果痕迹没有不是实时的,是之前的。以及相应解决办法。

1 在 Nifi 中做数据处理,有一个半小时之前执行过的流程,因为没设置好执行的时间,结果把读的数据库的表持续读成数据流 流到文件里,结果生成大量文件,一个文件就存着一张表的结果。 2 然后过了三十分钟吧,…

CSS中背景颜色、背景图片、渐变色、背景定位、精灵图(雪碧图)介绍

背景background: 背景可以设置为颜色和图片,设置为图片时,可以对图片继续设置。 background-color:设置背景颜色: 其颜色的取值方式前面提到过,和color的取值一样,但是默认值transparent透明 body {background-colo…

HTML左边和右边是固定的宽度但是中间是自动的布局方式

对于这个布局方式我们可以是用绝对定位的方式来实现这个效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns"http://www.w3.org/1999/xhtml&quo…

There is insufficient memory for the Java Runtime Environment to continue. NIFI 启动时报 jvm内存溢出

Nifi 突然启动报错。之前正常&#xff0c;停了两天再起就jj了。。 Nifi 解压路径还有log文件夹&#xff0c; 里面有各种日志文件可看。他把错误集中另存为了一个文件&#xff1a; 打开里面一通查看&#xff0c;调整。描述是java的运行环境jvm内存超出了&#xff0c;帖子…

CSS中盒子模型、嵌套盒子中垂直外边距塌陷问题解决方案、标准盒模型、怪异盒模型

盒子模型&#xff08;Box Model&#xff09;&#xff1a; 指把HTML页面中的元素看作是一个矩形的盒子&#xff0c;也称容器&#xff0c;这个盒子从内到外由&#xff1a;元素的内容&#xff08;content&#xff09;、内边距&#xff08;padding&#xff09;、边框&#xff08;b…

servlet/filter/listener/interceptor区别与联系(转)

由于最近两个月工作比较清闲&#xff0c;个人也比较“上进”&#xff0c;利用工作空余时间&#xff0c;也继续学习了一下&#xff0c;某天突然想起struts2和struts1的区别的时候&#xff0c;发现为什么struts1要用servlet&#xff0c;而struts2要用filter呢&#xff1f;一时又发…

Eclipse和IDEA 简单对比说明

Eclipse和IDEA Eclipse 当下最流行的IDE&#xff08;集成开发环境&#xff09;当属eclipse和idea莫属&#xff0c;不少新手都在问这两个ide哪个更好&#xff0c;今天给大家说一下自己这些年来使用这两款开发环境的心得。 一般情况下&#xff0c;问这个问题大多是新手&#xff0…

CSS中文档流之普通流,浮动及定位、浮动特性及清除浮动的方式、定位模式,子绝父相搭配定位方式、z-index层级

文档流&#xff1a; 普通流&#xff08;normal flow&#xff09;&#xff1a; 字面意思是普通流或者标准流&#xff0c;也就是常说的文档流&#xff0c;指网页内标签正常是从上到下&#xff0c;从左到右排列的意思&#xff0c;css的定位机制有3种&#xff1a;普通流&#xff…

Java字符串的10大热点问题盘点

本文是html5tricks原创翻译&#xff0c;转载请看清文末的转载要求&#xff0c;谢谢合作&#xff01; 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题&#xff0c;如果你也是Java初学者&#xff0c;仔细看看吧&#xff1a; 1、如何比较字符串&#xff0c;应该…

VScode中常用element语法

Element语法&#xff1a; 熟练掌握element语法可以大大提高开发效率&#xff0c;建议在平时练习时留意element语法&#xff0c;下面是常用VScode中element语法&#xff1a; 1、快速生成HTML骨架&#xff1a;!Enter或Tab键 2、快速生成带有id或者class名的标签&#xff1a;标签…

jQuery Tools:Web开发必备的 jQuery UI 库

基本介绍 jQuery Tools 是基于 jQuery 开发的网站界面库&#xff0c;包含网站最常用的Tabs&#xff08;选项卡&#xff09;、Tooltip&#xff08;信息提示&#xff09;、Overlay&#xff08;遮罩、弹窗&#xff09;、Scrollable&#xff08;滚动控制&#xff09;、Form Validat…

控制元素显示和隐藏的方式及区别、内容溢出处理(区域滚动)、透明性、字体图标、常见字体、自定义字体设计、网站图标、CSS代码分析

元素的显示与隐藏&#xff1a; 常见控制元素的显示和隐藏的属性有display、visibility、overflow&#xff0c;需要清楚的理解三者之间的区别。 display显示&#xff1a; 当值为none时为销毁对象&#xff0c;不保留原位置&#xff0c;当值为block时为生成对象。 visibility可…

上周热点回顾(5.26-6.1)

热点随笔&#xff1a; [歪谈]员工(人才),留得住是因为本身就留得住&#xff1b;留不住的,你永远留不住&#xff08;沈逸&#xff09; 离开北京之前我把过去四年做过的项目的全部源码公开了、需要的联系我、不需要的也欢迎喷水&#xff08;Suzuki.kakeru&#xff09; 关于公司…

html5中Canvas、绘制线条模糊、常见绘制工具、绘制基本图形、绘制图片、面向对象的方式绘制图形图片、绘制文本、帧动画绘制

Canvas容器: canvas标签用来定义图像的容器&#xff0c;必须配合脚本来绘制图像&#xff0c;canvas也运用于游戏开发。注意&#xff1a;canvas绘制图时会出现线条模糊情况&#xff0c;这是因为显示屏像素和canvas中定义的一个点不完全重合&#xff08;相差0.5&#xff09;导致…

[VirtaulBox]网络连接设置

由于前几天老师要检查大作业&#xff0c;而我们的数据库是放在虚拟机里的&#xff08;不想在本机里放太多东西&#xff0c;保持轻便快速...&#xff09;&#xff0c; 平时是用的桥接模式&#xff0c;但是考虑到可能教室里不好上网&#xff08;图书馆底下信号比较差...&#xff…

MySQL INFORMATION_SCHEMA 使用

一、INFORMATION_SCHEMA介绍 第一个查询看看库里有多少个表&#xff0c;表名等select * from INFORMATION_SCHEMA.TABLES information_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名&#xff0c;数据库的表&#xff0c;表栏的数据类型与访问权限等。再简单点…

SVG矢量图简介

SVG矢量图&#xff1a; html5支持内联svg,svg指可以伸缩的矢量图&#xff0c;其优点是放大不会模糊&#xff0c;支持任意尺寸打印不损坏品质&#xff0c;可通过编辑器创建和修改&#xff0c;&#xff1b;使用XML定义&#xff0c;其本质就是XML文件&#xff0c;和Canvas类似&am…

Web SQL介绍,web sql中增删改查、数据存储位置、运行脚本、建表建库

Web SQL&#xff1a; Web SQL是一种简单的存在服务器中的数据库&#xff0c;运行在javascript脚本中&#xff0c;其数据储存在计算机Application中Web SQL中。 web sql提供了三个核心方法&#xff1a; 1.openDatabase(‘dbname’,‘edition’,‘explain’,‘size’),此方法用…