【发布时间】:2018-08-18 16:34:46
【问题描述】:
我是 React-Native 和 PHP 的新手,我正在尝试使用如下代码将一个数组从 react-native 发送到我的服务器上的 PHP:
SaveData() {
let { RoomNo } = this.state
let q = [{"0":"BVR001","Stock_Code":"BVR001","1":0,"Qty":0},
{"0":"BVR015","Stock_Code":"BVR015","1":0,"Qty":0},
{"0":"BVR017","Stock_Code":"BVR017","1":0,"Qty":0}]
let url = 'http://192.168.100.99/SaveMNB.php'
fetch(url, {
method : 'POST',
headers : {
'Accept' : 'application/json',
'Content-Type' : 'application/json'
},
body : JSON.stringify({
RoomNo : RoomNo,
Orderan : q
})
})
.then(res => res.json())
.catch(err => Alert.alert('ERROR',err.toString(),
[{text: 'OK'}],{ cancelable: false }))
}
在 PHP 端,我的代码如下:
<?php
include("dbconfig.php");
$json = file_get_contents("php://input");
$obj = json_decode($json,true);
$RoomNo = $obj['RoomNo'];
$OrderanX[] = $obj['Orderan'];
$con = sqlsrv_connect($myServer,$MyDbR);
if ( $con === false ) {
die( print_r( sqlsrv_errors(), true));
}
foreach($OrderanX As $Order) {
//HERE WILL BE LOOPING THE ARRAY AND PUT IT INTO DATABASE
}
echo json_encode('SUCCESS');
?>
这将始终返回错误,因为我无法将数组从 react-native 传递给 php。
错误是
SyntaxError: JSON Parse error: Unrecognized token '<'
如何将数组从 react-native 传递到 php,谢谢,非常感谢。
编辑:
但是,如果我删除 foreach 循环并将代码更改为
echo json_encode($OrderanX);
它会返回
[object Object],[object Object].[object Object]
【问题讨论】:
-
请添加它返回的错误。
-
之前在浏览器网络控制台中检查您的响应。
-
已经添加错误信息,请帮忙
标签: php arrays json reactjs react-native