返回列表 发帖
查看: 864|回复: 8

[已处理] 支付宝付款后积分不变临时解决方案

4

主题

15

回帖

25

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2023-3-8 12:25:23 | 显示全部楼层 |阅读模式
BUG反馈
程序版本: X3.5
浏览器: Chrome 
BUG地址: 隐藏内容
BUG截图:
测试用户名: 隐藏内容
测试密码: 隐藏内容
  1. $payment = new payment_alipay();      //生成支付订单
  2. $isright = $payment->alipay_sign_verify($sign, $_POST); //支付宝签名验证

  3. if(!$isright) {                                 //如果验证不成功,权显示'fail'
  4.         $_POST['sign'] = $sign;
  5.         payment::paymentlog('alipay', 0, 0, 0, 50001, $_POST);
  6.         exit('fail');
  7. }
复制代码
支付宝付款后积分不变临时解决方案,搞了我5个小时,将http://www.域名.com/api/payment/notify/notify_alipay.php 内的上面支付宝签名安全验证代码隐藏/删除即可。
等待官方后期修复。


1 贡献

最佳答案

另外,建议您不要将您的这个方法放签名里,容易误导其他用户,修改此句代码是不合适的
www.ccchh.com
回复

使用道具 举报

18

主题

3960

回帖

7304

积分

应用开发者

贡献
359 点
金币
1397 个
QQ
发表于 2023-3-8 15:48:58 | 显示全部楼层
这是错误做法,这样做将直接导致不经验证的信息可以直接入库成功,存在极大安全隐患
回复 支持 反对

使用道具 举报

18

主题

3960

回帖

7304

积分

应用开发者

贡献
359 点
金币
1397 个
QQ
发表于 2023-3-8 15:49:53 | 显示全部楼层
这个位置停掉了,说明你两边的密钥对不上,填写的密钥错了
回复 支持 反对

使用道具 举报

4

主题

15

回帖

25

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-3-8 21:41:59 | 显示全部楼层
湖中沉 发表于 2023-3-8 15:49
这个位置停掉了,说明你两边的密钥对不上,填写的密钥错了

但是密钥对不上,为什么可以支付成功呢?
既然可以成功支付,说明密钥是对的呀。
www.ccchh.com
回复 支持 反对

使用道具 举报

18

主题

3960

回帖

7304

积分

应用开发者

贡献
359 点
金币
1397 个
QQ
发表于 2023-3-8 22:07:25 来自手机 | 显示全部楼层
wzzjhc 发表于 2023-3-8 21:41
但是密钥对不上,为什么可以支付成功呢?
既然可以成功支付,说明密钥是对的呀。 ...

不,你这个逻辑可不对,秘钥主要用于验证,而不是创建交易
回复 支持 反对

使用道具 举报

4

主题

15

回帖

25

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-3-9 12:02:33 | 显示全部楼层
湖中沉 发表于 2023-3-8 22:07
不,你这个逻辑可不对,秘钥主要用于验证,而不是创建交易

我最后把文件payment_alipay.php内的  openssl_free_key($public_key);
这句不影响验签。删了。就好了
www.ccchh.com
回复 支持 反对

使用道具 举报

4

主题

15

回帖

25

积分

初学乍练

贡献
0 点
金币
5 个
 楼主| 发表于 2023-3-9 12:14:04 | 显示全部楼层
湖中沉 发表于 2023-3-8 22:07
不,你这个逻辑可不对,秘钥主要用于验证,而不是创建交易

api/payment/payment_alipay.php         第88行        openssl_free_key() 出错
openssl_free_key($public_key);//$public_key是公钥字符串,而openssl_free_key()是用来释放资源,所以在释放字符串的时候出现错误,我不知道这样子理解对不对。

www.ccchh.com
回复 支持 反对

使用道具 举报

18

主题

3960

回帖

7304

积分

应用开发者

贡献
359 点
金币
1397 个
QQ
发表于 2023-3-9 13:35:35 | 显示全部楼层
wzzjhc 发表于 2023-3-9 12:14
api/payment/payment_alipay.php         第88行        openssl_free_key() 出错
openssl_free_key($public_key);//$p ...

不对,如果你注释这句就好了,我怀疑你环境的openssl相关环境有问题。

但这句写法是没问题的
回复 支持 反对

使用道具 举报

18

主题

3960

回帖

7304

积分

应用开发者

贡献
359 点
金币
1397 个
QQ
发表于 2023-3-9 13:39:50 | 显示全部楼层
另外,建议您不要将您的这个方法放签名里,容易误导其他用户,修改此句代码是不合适的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-5-3 18:14 , Processed in 0.049356 second(s), 10 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表