thinkphp5.0支付宝在线支付下单整个流程,包括创建订单、支付成功回调更新订单状态、最终跳转到商户订单详情页

查看演示

下载资源:

17

次 下载资源

下载积分:

998

积分

支付宝在线支付控制器代码 public function alipay() {//发起支付宝支付

$order_no = date("YmdHis") . rand(100000, 999999);

if (request()->isPost()) { //支付表单提交,并唤起支付宝在线支付

//调用 application\index\model\Pay.php

$Pay = new Pay;

$result = $Pay->alipay([

'notify_url' => request()->domain() . url('index/index/alipay_notify'),

'return_url' => request()->domain() . url('index/index/alipay_return')."?order_no=".$order_no."&",

'out_trade_no' => input('post.orderid/s', '', 'trim,strip_tags'),

'subject' => input('post.subject/s', '', 'trim,strip_tags'),

'total_fee' => input('post.total_fee/f'), //订单金额,单位为元

'body' => input('post.body/s', '', 'trim,strip_tags'),

]);

if (!$result['code']) {

return $this->error($result['msg']);

}

return $result['msg'];

}

//创建订单

db('order_sucaihuo')->insert(array(

'order_no' => $order_no,

'order_money' => 0.1, //订单金额

'state' => 0, //支付状态 0 未支付, 1已支付

'uid' => 1, //用户uid

'addtime' => time(), //下单时间

'update_time' => 0 //支付时间

));

$this->view->orderid = $order_no;

return $this->fetch();

}

//支付宝客户端会每隔一段时间请求一次

public function alipay_notify() {//异步订单通知

$Pay = new Pay;

$result = $Pay->notify_alipay();

if ($result == 'success') {

$pay_info = $_REQUEST;

$order_no = $pay_info['out_trade_no'];

$order_info = db('order_sucaihuo')->where('order_no', $order_no)->find();

//若是未付款则更新

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

$data['trade_no'] = $pay_info['trade_no'];

$data['state'] = 1;

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

db('order_sucaihuo')->where("order_no", $order_no)->update($data);

}

}

//测试支付回调,linux记得开启777写入权限

file_put_contents("notify.txt", $result);

file_put_contents("request.txt", json_encode($_REQUEST));

}

压缩包有订单表 CREATE TABLE IF NOT EXISTS `order_sucaihuo` (

`id` int(11) unsigned NOT NULL,

`uid` int(11) NOT NULL,

`order_no` varchar(30) NOT NULL,

`trade_no` varchar(150) DEFAULT NULL COMMENT '交易号',

`order_money` decimal(10,2) DEFAULT '0.00',

`state` int(2) NOT NULL DEFAULT '0',

`addtime` int(10) NOT NULL,

`update_time` int(10) DEFAULT '0'

) ENGINE=MyISAM AUTO_INCREMENT=6718 DEFAULT CHARSET=utf8;

php整合支付宝,Thinkphp5.0整合支付宝在线下单相关推荐

  1. 基于thinkphp5.0和支付宝面对面扫码支付DEMO制作的扫码支付

    ​ 基于thinkphp5.0和支付宝面对面扫码支付DEMO制作的扫码支付 今天接口申请下来,下载了官方demo对着调试了一天,终于实现想要的功能,先看图 选择支付宝支付 跳出二维码弹窗 手机支付宝进 ...

  2. 一分钟教会你利用thinkphp5.0接入支付宝

    一分钟教会你利用thinkphp5.0接入支付宝 备注:thinkphp版本:5.0.24 接入前的准备: 1.沙箱环境网址:https://openhome.alipay.com/platform/ ...

  3. ThinkPHP5.0+APP+支付宝支付 服务端开发

    工作环境,支付宝账号是公司的,app应用和秘钥配置都是我自己申请的,这其中的流程暂且跳过. 一.准备工作 appid.应用私钥.应用公钥.支付宝公钥 二.配置文件 'alipay'=>['app ...

  4. c# 中通快递对接_基于C#的快递在线下单接口免费对接方法-快递鸟

    [c#]代码库using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  5. 支付二维码整合 - 三码合一支持支付宝、QQ、微信

    支付二维码整合 - 三码合一支持支付宝.QQ.微信 1. 前提:获取各个二维码的具体内容 在写代码前,我们需要先获取不同支付方式的二维码内容.很简单,只需要打开各个支付码,截图,然后随便找个可以扫码的 ...

  6. 一篇文章读懂支付宝9.0改版背后的产品逻辑和战略布局

    关于支付宝9.0改版:如果你只看到了蓝色图标,那么还停留在表相.如果你还看到了类似"大众点评"与"微信",那么进入了皮相.如果你看清楚了产品改版背后的商业逻辑与 ...

  7. plupload php实例,thinkPHP5框架整合plupload实现图片批量上传

    这篇文章主要介绍了关于thinkPHP5框架整合plupload实现图片批量上传,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 本文实例讲述了thinkPHP5框架整合plupload ...

  8. 项目ITP(五) spring4.0 整合 Quartz 实现任务调度

    2014-05-16 22:51 by Jeff Li 前言 系列文章:[传送门] 项目需求: 二维码推送到一体机上,给学生签到扫描用. 然后须要的是 上课前20分钟 .幸好在帮带我的学长做 p2p ...

  9. IIS5.1/IIS6.0 整合Tomcat6.0.14完全版

    1.从sun网站下载jdk1.6版 2.从tomcat官方站下载tomcat6.0.14版 3.下载JK2 (下载地址:http://archive.apache.org/dist/jakarta/t ...

最新文章

  1. TSM对Oracle数据库备份脚本
  2. wps如何自己制作流程图_自己如何制作APP软件
  3. 单例模式之文件缓存器
  4. C++string容器-字符存取
  5. linux从别的主机下载,从局域网内的其他Linux主机下载文件
  6. android方法是对象吗,为什么android中对象不初始化也能调用方法?
  7. python与vb语言_vb.net和python区别是什么
  8. HTML网页设计CSS样式代码大全
  9. 超全面总结Vue面试知识点
  10. 幅相曲线渐近线_第十讲 频域分析法(Nyquist曲线)
  11. android switch的使用方法,Android开关控件,ToggleButton和Switch使用大全
  12. python语言mooc作业_计算机基础(Ⅱ)Python语言-中国大学mooc-试题题目及答案
  13. Simulink数据保存提取和示波器显示
  14. CVPR2019| 中科院VIPL实验室11篇CVPR解读:弱监督学习、视频分割、目标检测
  15. 简单的集装箱号码识别
  16. 全网最新-扶风视频解析计费系统,2022优化免授权版(赠接口轮询插件)
  17. 弘辽科技:拼多多再出“新招”
  18. 小学6年级下册计算机课教案,小学六年级下册音乐教案大全
  19. 从DataSet 导出到Excel(是DataSet中的每个DataTable对应每个Sheet)
  20. django 连接oracle的坑和解决方法

热门文章

  1. java环境变量自动设置_自动设置Java环境变量
  2. 【c语言数据结构笔记】1.2 数据结构
  3. 华科计算机复试ccf成绩,新鲜速递!刚拟录取华科学妹总结的复试攻略,快看
  4. python语言保留字的特点_python保留字及其说明
  5. thinkphp josn mysql_ThinkPHP:JSON字段类型的使用(ORM)
  6. oracle安装需要的包列表
  7. 持续集成之 Spring Boot 实战篇
  8. 用Emit技术替代反射
  9. 10 种保护 Spring Boot 应用的绝佳方法 1
  10. 序(不知道是什么时候的模拟题)