欢迎来到酱油妹!织梦模板,dede模板下载,织梦cms模板,免费网站模板下载站

酱油妹

织梦CMS支付宝接口问题及解决方法

企业模板

我的状况: 织梦DEDE系统只集成了支付宝。其他状况可能会有不一样的及国内,呵呵,这里只把我遇到的问题进行推荐。在织梦DEDE系统上设置好了企业ID、密钥、支付宝邮箱之后,理论上应该是直接可以用了,但是我还是遇到了问题 。第一就来了一个ILLEGAL_ARGUMENT错误。经过剖析post出去的url地址,发现企业ID、密钥、支付宝邮箱都加载错误。经过剖析应该是数据加载错误。于是剖析data目录下的sys_pay.cache.php文件:$payment_select = array(0 => “tenpay”,2 => “alipay”,3 => “cbpayment”,4 => “yeepay”);$payment_userid = array(0 => “********“,1 => “”,2 => “”,3 => “”,4 => “”);$payment_key = array(0 => “*********“,1 => “”,2 => “”,3 => “”,4 => “”);$payment_curpay = array(0 => ‘CNY’,1 => ‘CNY’,2 => ‘CNY’,3 => ‘CNY’,4 => ‘CNY’);$payment_exp = array(0 => “0.01″,1 => “0.00″,2 => “0.01″,3 => “0.01″,4 => “0.00″);$payment_email = array(0 => “[url=mailto:*******@a.com%22,1]*******@*****.com“,1[/url] => “[url=mailto:webmaster@admin.com%22,2]webmaster@admin.com”,2[/url] => “[url=mailto:webmaster@admin.com%22,3]webmaster@admin.com”,3[/url] => “[url=mailto:webmaster@admin.com%22,4]webmaster@admin.com”,4[/url] => “[url=mailto:“webmaster@admin.com]webmaster@admin.com[/url]“);如红色字所示,这是应该传递的三个直接跟支付宝有关的数据,而他们在数组中的位置为0,也就是array[0]位置。再来看支付宝接口下的alipay_config.php文件<?php$partner = $payment_userid[2];$security_code = $payment_key[2];$seller_email = $payment_email[2];//卖家邮箱$_input_charset = $cfg_soft_lang; //字符编码格式 现在支持 GBK 或 utf-8$sign_type = “MD5″; //加密方法 系统默认(不要修改)$transport = “http”;//访问模式,你可以依据我们的服务器是不是支持ssl访问而选择http以及https访问模式(系统默认,不要修改)$notify_url = $cfg_basehost.”/member/paycenter/alipay/notify_url.php”;// 异步返回地址 需要填写完整的路径$return_url = $cfg_basehost.”/member/paycenter/alipay/return_url.php”; //同步返回地址 需要填写完整大额路径$show_url = “” //你网站产品的展示地址,可以为空?>如上红色字所示,而他的位置为array[2],所以加载数据必定错误。(我这是只有支付宝接口的状况,其他状况照此剖析即可),将上面的2改为0,数据加载问题解决。但是,支付宝接口还是不成功。这次提示的错误为:ILLEGAL_LOGISTICS_FORMAT查支付宝文档,这是因为物流有关问题造成。经过第三查询url,剖析后发现url中缺少了一个参数叫“logistics_fee”。如何解决呢?原来还有一个支付宝的配置文件,在member/inc/下的config_pay_alipay.php。打开文件:“service” => “trade_create_by_buyer“, //买卖种类,必填实物买卖=trade_create_by_buyer(需要填写物流)“partner” => $partner, //合作商户号“return_url” => $return_url, //同步返回“notify_url” => $notify_url, //异步返回“_input_charset” => $_input_charset, //字符集,默觉得GBK“subject” => $ptype, //产品名称,必填“body” => $pname, //产品描述,必填“out_trade_no” => $buyid, //产品外部买卖号,必填,每次检测都须修改“logistics_fee” => 0.00, //物流配送成本“logistics_payment”=>’BUYER_PAY’, // 物流配送成本付款方法:SELLER_PAY(卖家支付)、BUYER_PAY(买家支付)、BUYER_PAY_AFTER_RECEIVE(货到付款)“logistics_type”=>’EXPRESS’, // 物流配送方法:POST(平邮)、EMS(EMS)、EXPRESS(其他快递)这里买卖种类为实物买卖,trade_create_by_buyer,下面三个红色字部分就是物流信息部分,而不显示的就是logistics_fee” => 0.00。解决方法:只须将后面的0.00加上单引号,问题就解决了,也就是改成logistics_fee” => '0.00′。解决之后,顺利通过。购买点卡成功。 正常的 array[2] 才是,可能你只取了支付宝变成array[0]了。logistics_fee => 0.00 应该被PHP觉得是个空值了。开始的时候logistics_fee默认是没有的,后来可能弄上去了。谢谢楼主提出该问题。(责任编辑:酱油妹)


希望以上内容可以解决您的问题!
如有其他问题欢迎大家一起交流学习!
作者:酱油妹 来源:互联网 关注: 时间:2020-08-28 02:51
版权声明:凡注明来源为www.jiangyoumei.com的均为本站原创,转载请注明来源。
本文网址:http://www.jiangyoumei.com/jiaocheng/wenti/20200828/9627.html
►凡本站提供教程均已验证教程的准确性。
►为提高用户在织梦后台添加栏目的灵活性(可随意添加/删除栏目),并保持(管理后台添加/删除栏目)与前端网站栏目的一致,本站模板中栏目均未固定,用户直接搜索typeid=''并替换''中的数字为所需栏目id即可。
►本站提供各种类型织梦模板!希望在这里找到喜欢的。下载本站模板,用户直接替换相关文字和图片即可。
►本站仅提供织梦模板即(DEDE模板),(除另外说明)均不带织梦安装程序及数据,用户直接覆盖默认模板即可。
►本站所有资源(包括源码、模板、插件等)仅供学习与参考,请勿用于商业用途。
►如有其他问题,请加网站客服QQ(375750496)进行交流。
相关织梦教程
在线客服

织梦模板 整站模板 新手教程 使用技巧