juppix: JSON - falsches Format

Beitrag lesen

Moin zusammen,

ich habe ein Problem. Ich benötige eine JSON-Ausgabe für eine AJAX-Tabellen-Komponente in folgendem Format (Beispiel der Komponente):

{
data: [
[
"Tiger Nixon",
"System Architect",
"Edinburgh",
"5421",
"2011/04/25",
"$320,800"
],
[
"Garrett Winters",
"Accountant",
"Tokyo",
"8422",
"2011/07/25",
"$170,750"
],
[
"Ashton Cox",
"Junior Technical Author",
"San Francisco",
"1562",
"2009/01/12",
"$86,000"
],

Nun habe ich folgenden Snippet gefunden, der meine mysql-Abfrage in JSON umwandelt via PHP:

	 $sql = "SELECT * FROM ...");
		
   $result = mysql_query($sql);	
	
	/* pealing the array data from db object */        
    while ($row = mysql_fetch_assoc($result)) { 
        $data[] = $row;		
    }
  
    /* checking if data has no rows */
    if(isset($data)){
        /* convert data to json */		
        $json = json_encode($data);
    }else{
        /* set nothing to return */
        $json = null;
    }
 
    /* return the json result */	
    echo $json;
?>

Das funktioniert soweit ganz gut - sogar der Browser erkennt das korrekte JSON und formatiert es korrekt. LEIDER wird nicht exakt das Format ausgegeben, wie es erwartet wird und ich es benötige. Es erscheint nämlich:

[
{
id: "1",
typ_id: "1",
day: "2018-02-21 00:00:00",
users_id: "1",
text_short: "k",
text_long: "Krank"
},
{
id: "1",
typ_id: "1",
day: "2018-02-22 00:00:00",
users_id: "1",
text_short: "k",
text_long: "Krank"
},

Wie man sieht beginnt es nicht mit "{", sondern "[". ... und das "data:" usw. fehlt auch.

Wie kriege ich es denn EXAKT so formatiert wie die Ausgabe ganz oben?

1000 dank u. grüße jup

akzeptierte Antworten