{
"employees": [{
"name": "Chicken Shawarma",
"price": "510.00",
"nutrients": "A
B "
}]
}
这是我的json回复,在我的应用程序中,我为“营养素”设置了两行记录。例如:
A
B
这个谷在数据库中保存没有任何问题(My SQL),现在我希望将“营养素”数据显示为两行记录。但它显示错误
SyntaxError: unterminated string literal
如果您有任何想法请与我分享。
这是我的服务器端代码
if ($itemInfo->num_rows() == 1) {
$row = $itemInfo->row_array();
$json_arr = $_GET['callback'] . '(' .
"{'name' : '" . $row['name'] . "',"
. "'nutrients' : '" . $row['nutrients'] . "',"
. "'img' : '" . $row['img'] . "'}" . ')';
} else {
$json_arr = json_encode(array('status' => 'N'));
}
echo $json_arr;
这是我的客户端代码
$http.jsonp(full_url).success(function (data) {
$scope.item = data ;
});
答案 0 :(得分:2)
您的主要问题是通过连接字符串来进行JSON响应。在这种情况下,您会错过所需的编码/转义等。所以,首先你应该创建一个关联数组,然后在$json_arr = $_GET['callback'].'('.json_encode($your_json_like_array).')';
子句中完全像else
一样。
结果代码应如下所示:
$json_arr = array(
'name' => $row['name'],
...,
'nutrients' => $row['nutrients']
);
$json_arr = $_GET['callback'].'('.json_encode($json_arr).')';