微信支付回调函数无法插入mysql数据

我想在微信支付成功后通过回调插入一个订单,其中订单需要填入地址字段。如下图,其中$data['address']为地址字段,是通过获取缓存的session来得到的,但是无论直接读取session还是将其json化,都并不能插入到mysql数据库中。将其直接替换成中文字符则可以插入。这是因为回调函数没办法获取session的原因吗?
其次 在电脑端中调试dump($_SESSION)可以输出,但是在微信中则无法输出,不知为何.其中attach由于长度限制已无法使用,因此不知地址字段如何传递.

图片描述

附上session设置方法

图片描述

由于使用thinkphp 在前台文件用<php>dump($_SESSION)</php>输出,在电脑上可以看到,而微信不行

以上,求解

阅读 4.4k
2 个回答

楼主有没搞懂session是什么。


session不是缓存,每个用户不同的访问方式在服务器上产生的session都是不一样的。

你前台能打印出来是应为服务器为你这个用户设置了session,而微信回调并没有给设置啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进