支付宝支付遇见了个神奇的问题

WormJan 2017-07-26 06:56:40

支付宝支付,异步通知。
测试了大概一百次,小额都没有问题。有一次,大额支付,一万多一点,发现支付成功后,站内的订单状态未改变。一开始以为没收到通知。后来发现不是没收到通知。
从上面的图可以看出来,paytype和paytime都有数据了。而这2个在未支付的时候,都是没有数据的。只有在支付完成收到 异步通知的时候,才会更改paytime和paytype,而在修改这2项的时候,也同时修改订单状态的。如下图代码:


那么就奇怪了,更新订单的时候,如图二的代码里 paytype paytime status 都进行了更新,而事实上却只更新了前2者,最后那个status 没更新。而且我咨询了支付宝技术,他们给我查了下我这边已经反馈给支付宝success了。说明代码正常执行了。否则不会执行 echo 'success'

请问这是什么情况引起的??
...全文
212 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
WormJan 2017-07-27
  • 打赏
  • 举报
回复
引用 5 楼 jam00 的回复:
那你就判断一下返回,写下日志看一下 status 也改为 ·status · ,因为 status 是关键字
现在加入日志了。主要是支付宝手续费太高了。测试一次五六十块钱没了。只能等有客户付款了再看了
WormJan 2017-07-27
  • 打赏
  • 举报
回复
包括其它的对该字段的操作,也都没有问题的
WormJan 2017-07-27
  • 打赏
  • 举报
回复
引用 5 楼 jam00 的回复:
那你就判断一下返回,写下日志看一下 status 也改为 ·status · ,因为 status 是关键字
关键字,为什么小额的支付都没有问题。只有这一次大额的有问题。
果酱很好吃 2017-07-27
  • 打赏
  • 举报
回复
那你就判断一下返回,写下日志看一下 status 也改为 ·status · ,因为 status 是关键字
WormJan 2017-07-27
  • 打赏
  • 举报
回复
引用 2 楼 jam00 的回复:
discuz 插件? 要不你就试试 DB 插入吧,这样应该没问题,直接执行sql
对discuz插件。这个就是调用的db。不过不是插入,是更新的。这个C::t最终调用的还是 DB::update
WormJan 2017-07-27
  • 打赏
  • 举报
回复
引用 1 楼 hongmei85 的回复:
查查MySQL日志呀
查日志了,没有关于这条语句的错误
果酱很好吃 2017-07-27
  • 打赏
  • 举报
回复
discuz 插件? 要不你就试试 DB 插入吧,这样应该没问题,直接执行sql
hongmei85 2017-07-26
  • 打赏
  • 举报
回复
查查MySQL日志呀

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧