Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在angularJs中显示数据的有效JSON_Javascript_Php_Mysql_Json_Angularjs - Fatal编程技术网

Javascript 在angularJs中显示数据的有效JSON

Javascript 在angularJs中显示数据的有效JSON,javascript,php,mysql,json,angularjs,Javascript,Php,Mysql,Json,Angularjs,我想使用AngularJs在我的站点中显示数据(json)。以下是我所做的: 在phpmyAdmin中创建数据库。 创建一个包含两行、主题和正文的表。我应该创建一个id吗? 在使用PHP和angular之后,我得到了如下JSON: [{ "0":"Soheil","subject":"Soheil", "1":"Sadeghbayan","body":"Sadeghbayan"} ,{"0":"","subject":"","1":"","body":""} ,{

我想使用AngularJs在我的站点中显示数据(json)。以下是我所做的:
在phpmyAdmin中创建数据库。
创建一个包含两行、主题和正文的表。我应该创建一个id吗?
在使用PHP和angular之后,我得到了如下JSON:

[{
    "0":"Soheil","subject":"Soheil",
    "1":"Sadeghbayan","body":"Sadeghbayan"}
    ,{"0":"","subject":"","1":"","body":""}
    ,{"0":"","subject":"","1":"","body":""}
    ,{"0":"dasdasd","subject":"dasdasd","1":"qe","body":"qe"}
    ,{"0":"Hello","subject":"Hello","1":"This is chandler !","body":"This is chandler !"}
    ,{"0":"","subject":"","1":"","body":""},
    {"0":"Something new in website","subject":"Something new in website","1":"oh Awsome !","body":"oh Awsome !"
}]
我认为这是无效的JSON,因为当我用自定义JSON替换它时,我编写的JSON工作正常

Json有效

{
    "fruits": [
        {
            "id": "1",
            "name": "Apple"
        },
        {
            "id": "2",
            "name": "Orange"
        }
    ]
}  
AngularJS

var fruitsApp = angular.module('fruitsApp', []);

fruitsApp.factory('fruitsFactory', function($http) {
    return {
        getFruitsAsync: function(callback) {
            $http.get('fruits.json').success(callback);
        }
    };
});

fruitsApp.controller('fruitsController', function($scope, fruitsFactory) {
    fruitsFactory.getFruitsAsync(function(results) {
        console.log('fruitsController async returned value');
        $scope.fruits = results.fruits;
    });
});
Html

<ul>
            <li ng-repeat="fruit in fruits">
                {{fruit.subject}} is {{fruit.body}}
            </li>
</ul>  

有什么想法吗?Thx提前

您的JSON是有效的。有关JSON和检查/验证JSON对象的信息,请参阅

从$http.get/数据库数据返回的数据没有
fruits
属性,您希望在设置
$scope.fruits
时(以下代码片段取自您的代码):

$http.get调用返回的数据的结构与示例数据的格式不同

这是您的$http.get/数据库数据(为了简洁起见,我缩短了它):

以下是您的示例/模拟数据:

{
"fruits": [
    {
        "id": "1",
        "name": "Apple"
    },
    {
        "id": "2",
        "name": "Orange"
    }
]
}
前者是带有键的对象数组:
0
1
subject
body
。 后者是一个带有键的对象:
fruits


它们都是具有不同对象结构的有效JSON对象。但是,在没有属性的情况下,您需要一个
水果
属性。此外,您的HTML/UI可能希望数据格式与模拟数据中的格式类似。所以也要检查一下。

我使用以下url测试了您的json,它是有效的:正如Puttzy在回答中所说的那样。既然json是有效的,那么您的问题可能就不同了。您希望用这个json做什么?您已经用javascript做了什么?您的json是有效的:。您是否也在使用$resource?因为如果php返回一个数组,那么普通查询需要一个对象。因此,您可以在js中更改'query':{method:'GET',isArray:true},也可以执行退出(json_encode($value,json_FORCE_OBJECT));在phpThx中,我用json validb更新了我的问题,但是你的json是有效的。但是,如果您编写代码来处理第二个,那么您的第一个当然无法正确完成。为什么??也许这是我的错误!!我在我的问题中写了angular代码,我明白你的意思,我更改了$scope.fruits=results.fruits;到$scope.fruits=results,它工作正常,但当我将fruit.json替换为insert.php时,它只是在htmlThat's可能的b/c中显示了li的bullet,您的html逻辑需要“id”和“name”(来自模拟数据的水果数组中的属性)。但是,您的属性是0、1、subject和body。
 $scope.fruits = results.fruits;
[
{
    "0": "Soheil",
    "1": "Sadeghbayan",
    "subject": "Soheil",
    "body": "Sadeghbayan"
},
{
    "0": "Hello",
    "1": "This is chandler !",
    "subject": "Hello",
    "body": "This is chandler !"
},
{
    "0": "",
    "1": "",
    "subject": "",
    "body": ""
}
]
{
"fruits": [
    {
        "id": "1",
        "name": "Apple"
    },
    {
        "id": "2",
        "name": "Orange"
    }
]
}