兴弘海科技在给客户制作微信小程序定制开发的时候,遇到需要从微信小程序这边发送字符串到php后台,后台需要接收数据并处理。但是在php后台接收数据后,插入数据库的时候,显示为0,显然php后台并没有接收到数据,或者接收到数据后,不识别。那么遇到这种情况,该怎么处理呢?
兴弘海科技觉得应该从两个方便进行检查:
1、微信小程序前端进行检查。
先检查微信小程序前端发送数据的时候,有没有增加post(method: "post"),有没有增加
dataType: "json",
header: {
'content-type': 'application/json' // 默认值
},
以下是代码,请参考:
wx.request({
method: "post",
url: ' ',
data: {
goodnum,
orderprice,
goodid
},
dataType: "json",
header: {
'content-type': 'application/json' // 默认值
},
success: function (result) {
console.log(result);
}
})
解释:如果发送数据是字符串,微信小程序这边需要增加method: "post",
在这里再做个补充,传输的数据必须是字符串格式,如果不是字符串格式,发送数据失败,根本发送不了!那么,如果让微信小程序这边发送数据为字符串格式呢?请参考这篇转换格式的文章微信小程序wx.request传的值为数组。
2、php后台方面检查。
通过浏览器分析,兴弘海科技查看php后台其实已经接受到数据了,只可惜这个数据使用字符号【】裹起来的,那么作为后台就必须去掉【】。然后在进行数据库插入操作。
$goodid=input('goodid');
$goodid=str_replace('[','',$goodid);
$goodid=str_replace(']','',$goodid);
通过以上两个方面,就可以解决微信小程序发送json字符串到php后台,后台无法接收的问题。