# Frage zu JSON Aufbau



## mr_arrogant (21. August 2007)

Hello Folks,
ich übergebe mittels einem PHP Script mittels JSON Daten an Javascript und werte Sie dort aus.

Nun ist es so das ich zuvor nur wenig bis gar nicht mit JSON gearbeitet habe und bei meiner jetzigen Übergabe ein bisschen im wald stehe.

Folgende Test Übergabe Klappt einwandfrei:

```
echo '
{"data":
	{"results":[ 
		{"id":  "61670",
		 "title": "Aviator",
		 "original": "Aviator, The",
		 "jahr": "2004"
		},{"id":  "18645",
		 "title": "Absturz in der Wildnis",
		 "original": "Aviator, The",
		 "jahr": "1985"
		} ]
	}
}
';
```
Nun würde ich gerne noch neben *results* weitere Elemente hinzufügen was bisher wie folgt ausschaut:

```
echo '
{"data":[
	{"results":[ 
		{"id":  "61670",
		 "title": "Aviator",
		 "original": "Aviator, The",
		 "jahr": "2004"
		},{"id":  "18645",
		 "title": "Absturz in der Wildnis",
		 "original": "Aviator, The",
		 "jahr": "1985"
		} ]
	},
	{"count":"0"},
	{"search":"aviator"}
	]
}
';
```
Leider kann Javascript den Code nicht evaluieren und entsprechend ausgeben.

Vielleicht könnt ihr mir ja helfen, denn ich sehe den Fehler in der Syntax gar nicht.

PS: JS wirft bei der Abfrage keine Fehler, doch wenn ich auf die Elemente des Objects zugreifen will kommt immer "undefined" .. ergo muss ja irgendwas an der JSON übergabe falsch sein.

```
function getData(t) {
    var response = t.responseText;
    var daten = eval('('+response+')');

    for(i=0;i<daten.data.results.length;i++) {
      var link = daten.data.results[i];
.....
}
```


----------



## Quaese (21. August 2007)

Hi,

... oder am Zugriff auf die JSON-Variable ist etwas falsch. *data* ist ebenfalls ein Array, auf das
komponentenweise zugegriffen werden muss.

```
for(i=0;i<daten.data[0].results.length;i++) {
  var link = daten.data[0].results[i];
}
```
Ciao
Quaese


----------

