本DEMO演示了PHP支付宝和微信扫码在线支付,支付成功后,在回调地址显示支付相关信息。

难易:中级

下载资源

下载积分:

888

积分

操作步骤:

1.修改配置文件 Application/common/conf/config.php $arr = array(

'DB_TYPE' => 'mysql',

'DB_HOST' => "localhost",

'DB_NAME' => 'demo',

'DB_USER' => "sucaihuo.com",

'DB_PWD' => "sucaihuo.com",

'DB_PORT' => 3306,

'DB_PREFIX' => '',

);

2.修改支付宝和微信支付配置信息Application/home/conf/config.php

支付宝请到支付宝商户官网申请:https://b.alipay.com/?ynsrc=zhuzhanA,微信支付配置申请:https://mp.weixin.qq.com/cgi-bin/loginpage?t=wxm2-login&lang=zh_CN $arr = array(

'URL_ROUTER_ON' => true,

/* 支付设置 */

'payment' => array(

'alipay' => array(

// 收款账号邮箱

'email' => 'sucaihuo@126.com',

// 加密key,开通支付宝账户后给予

'key' => 'ggo084pb84gl43qnw82a39n9b7r1jq2m',

// 合作者ID,支付宝有该配置,开通易宝账户后给予

'partner' => '2088901006538525',

//收款支付宝账号,以2088开头由16位纯数字组成的字符串,一般情况下收款账号就是签约账号

'seller_id' => '2088901006538525',

//签名方式

'sign_type' => strtoupper('MD5'),

//字符编码格式 目前支持utf-8

'input_charset' => strtolower('utf-8'),

// 产品类型,无需修改

'service' => 'create_direct_pay_by_user',

// 支付类型 ,无需修改

'payment_type' => '1',

),

'alipaywap' => array(

// 收款账号邮箱

'email' => 'sucaihuo@126.com',

// 加密key,开通支付宝账户后给予

'key' => 'ggo084pb84gl43qnw82a39n9b7r1jq2m',

// 合作者ID,支付宝有该配置,开通易宝账户后给予

'partner' => '2088901006538525',

//收款支付宝账号,以2088开头由16位纯数字组成的字符串,一般情况下收款账号就是签约账号

'seller_id' => '2088901006538525',

//签名方式

'sign_type' => strtoupper('MD5'),

//字符编码格式 目前支持utf-8

'input_charset' => strtolower('utf-8'),

// 产品类型,无需修改

'service' => 'alipay.wap.create.direct.pay.by.user',

// 支付类型 ,无需修改

'payment_type' => '1',

),

'wechatjspai' => array(

'APPID' => 'wx422126b0b62bbfcfc',

'MCHID' => '1349825901',

'KEY' => '2088901006538525',

'APPSECRET' => '45843e705995a12106155f4c26f716dc',

),

)

);

只要操作以上两个步骤,即可调通支付宝和微信在线支付,以下为支付代码教程。

订单生成代码如下: Application\Home\Controller\PayController.class.php public function submit() {

$paytype = I("post.paytype");

$data['order_money'] = I("post.money", 1);//订单金额

$data['order_no'] = date("YmdHis") . rand(1000, 9999);//订单号

$data['pay_type'] = $paytype;

$data['addtime'] = time();

M("order")->add($data);

$site_url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];

$dir = dirname($site_url);

$data['url_notify'] = $dir . "/Notify/pay_alipay";//回调地址

$data['url_return'] = $dir . "/Pay/order_detail";//返回地址

$data['title'] = "标题" . $data['order_no'];

$data['body'] = "主体内容" . $data['order_no'];

if ($paytype == 'alipay') {

$this->alipay_jump($data);

} elseif ($paytype == 'wechat_code') {

$data['url_notify'] = $dir . "/Notify/pay_weixin";

$this->wechat_jump($data);

}

}

支付成功回调,更改订单状态为已付款: Application\Home\Controller\NotifyController.class.php public function pay_weixin() {

$simple = json_decode(json_encode(simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA'], 'SimpleXMLElement', LIBXML_NOCDATA)), true);

$notify_data['order_no'] = $notify_data['trade_no'] = $simple['out_trade_no'];

$notify_data['third_id'] = $simple['transaction_id'];

$notify_data['pay_money'] = $simple['total_fee'];

$notify_data['payment_method'] = 'weixin';

// $sign = $simple['sign'];

// file_put_contents('ac_simple.txt', json_encode($simple));

// file_put_contents('ac_notify_data.txt', json_encode($notify_data));

$this->order_pay($notify_data);

}

public function pay_alipay() {

$notify_data['order_no'] = $notify_data['trade_no'] = I("post.out_trade_no");

$notify_data['third_id'] = I("post.trade_no");

$notify_data['pay_money'] = I("post.total_fee");

$notify_data['payment_method'] = 'alipay';

$this->order_pay($notify_data);

file_put_contents('ac_notify_data.txt', json_encode($_REQUEST));

}

/**

* 支付结果返回

*/

public function order_pay($data_order) {

$order_no = $data_order['order_no'];

if ($order_no == '') {

return false;

}

$order_info = M('order')->where(array("order_no" => $order_no))->find();

if ($order_info['state'] == 0) {

$data_order['update_time'] = $_SERVER ['REQUEST_TIME'];

$data_order['state'] = 1; // 已付款

M('order')->where(array("order_no" => $order_no))->save($data_order);

}

}

回调不成功解决方案 1.首先检查回调地址是否正确

2.用file_punt_contents调试回调地址

更新日志 2018-8-13

1.添加订单表注释

2.安装说明更新

微信扫码支付html,pc端微信扫码支付和支付宝在线支付相关推荐

  1. 微信多开_电脑PC端微信双开多开

    微信多开 在电脑桌面上找到微信图标.右键图标,单击属性 复制微信的目标路径. 在电脑桌面上右键新建一个txt格式的记事本,编辑如下内容. @each off start /d "微信目标的上 ...

  2. 前端实现 微信扫码登录网站 pc端(二维码嵌套页面) 超详细,包会

    一.准备工作 本人申明:本案例使用到的appid和AppSecret都是无效的 appid:应用唯一标识,在微信开放平台提交应用审核通过后获得 AppSecret:在微信开放平台提交应用审核通过后获得 ...

  3. Java PC端微信、支付宝扫码支付(二)

    Java PC端微信.支付宝扫码支付(二) 前几天写了微信支付,附上链接 https://blog.csdn.net/qq_43494610/article/details/90411391 ,今天抽 ...

  4. 细说pc端微信扫码登录

    最近做了一个pc端微信扫码登录和微信付款的功能,一个比较常见的问题是在移动端使用微信扫码操作完毕后,pc端如何实时响应的问题.这里细说一下登录的实现流程,付款方面暂时还没找到比较好的实现方法,只能暂时 ...

  5. 前端PC端微信扫码登录

    PC端微信扫码登录 一.微信开放平台 1.创建网站应用 2.设置回调域名 二.代码 1.在index.html页面引入http://res.wx.qq.com/connect/zh_CN/htmled ...

  6. Springboot 实现 PC端 微信扫码登录

    依赖 <!-- httpclient--><dependency><groupId>org.apache.httpcomponents</groupId> ...

  7. 【电脑端】腾讯视频PC端微信截图扫码失败解决办法

    微信截图扫码原因:借朋友腾讯视频账号玩 微信截图失败原因:QQ自带的扫码软件的保存机制有问题 PC端截图扫码解决办法:用电脑自带的截图软件[截图快捷键:win+shift+s] 流程:截图后微信发给朋 ...

  8. 微信pc端网站应用扫码授权登录

    这是官方的文档 对接之前至少要先看下流程图 效果:用户点击微信登录跳出一个二维码,用户扫码授权后登录进去 1. 2. 需要做的事情 1.需要在微信开放平台上面注册账号,并认证企业,创建网站应用 2.认 ...

  9. PC 端微信扫码注册和登录

    一.前言 先声明一下,本文所注重点为实现思路,代码及数据库设计主要为了展现思路,如果对代码效率有着苛刻要求的项目切勿照搬. 相信做过微信开发的人授权这块都没少做过,但是一般来说我们更多的是为移动端的网 ...

最新文章

  1. 中柏平板u盘启动_大数据时代,如何挑选大容量U盘?
  2. 对ASCII文件的操作
  3. 进军中国软件,踏上寻找自我价值之路的菜鸟
  4. kubernetes(五)二进制安装-安装docker服务
  5. C++ Qt全局异常处理器_异常处理
  6. 来自DFRobot的中文语音识别模块
  7. android程序安装空间不足,AndroidStudio提示磁盘空间不足
  8. python写刷课脚本_python opencv 知到 刷课 脚本
  9. C++实现Base32加解码
  10. 申论高分作者心得分享——站在政府的角度写申论
  11. 华为云服务登录显示服务器异常,云服务器异常登录应该怎么处理
  12. Conditional ternary operator...
  13. DIV布局强制英文换行(div英文不怎么给力啊~ 只有用别的方法啦)
  14. 要想成为郎朗,请AI监督练琴可不行!
  15. 【数据分析】python基础必修3—条件语句/运算符/真假值/循环/算法练习
  16. Chrome 制作绿色便携版
  17. 深度强化学习系列: “奖励函数”的设计和设置(reward shaping)
  18. 英伟达发布526.98 WHQL 显卡驱动,支持RTX 4080,三款即将上线游戏
  19. 【雕爷学编程】Arduino动手做(61)---电压检测传感器
  20. 打过无数硬仗的美团点评王兴 为何说下半场竞合才是常态?

热门文章

  1. 相忘于江湖,追逐于区块链
  2. 净水器爆裂居民家中被淹 厂家回应“正在协商处理”
  3. 安装并配置maven
  4. linux arp攻击教程,Linux下防御arp攻击的方法
  5. c# winform show和showdialog的区别
  6. 非 Vue 相关技术总结
  7. 荣耀9i在印尼发布 - “潮美无处不在”引领印尼手机时尚潮流
  8. 从零开始debian----Debian安装与设置(2015.10)
  9. 网络营销:快手如何快速开通直播权限?
  10. [修正] iOS 10 使用相机及相簿闪退的问题修正