Quantcast
Channel: Recent Discussions — DataTables forums
Viewing all articles
Browse latest Browse all 81688

How to format to the right JSON format [SOLVED]

$
0
0
I'm trying to generate a JSON file that I can use with DataTables. After looking through these forums I guess my knowledge of javascript is too limited (honestly: non existant) in order to understand it. The thing is like this: I have a php file that generates a json file from a mysql query. It looks like this:

<?php

require "mysql.con.php";

$query = "SELECT spel_id,  locatie,  speler,  sum(punten)
FROM `whiteboard_games`
group by spel_id, speler";

$result = mysql_query($query);

$rows = array();

while($r = mysql_fetch_assoc($result)){
    $rows[] = array('data' => $r);
}

echo json_encode($rows);  

?>

this generates the following (valid) json (I simplified this to 4 rows, its actually +2000 rows and growing):

[
    {
        "data": {
            "spel_id": "2012-09-24 15:43:56",
            "locatie": "white room",
            "speler": "Arne",
            "sum(punten)": "17"
        }
    },
    {
        "data": {
            "spel_id": "2012-09-24 15:43:56",
            "locatie": "white room",
            "speler": "Bjorg",
            "sum(punten)": "26"
        }
    },
    {
        "data": {
            "spel_id": "2012-09-24 15:43:56",
            "locatie": "white room",
            "speler": "Bram",
            "sum(punten)": "-11"
        }
    },
    {
        "data": {
            "spel_id": "2012-09-24 15:43:56",
            "locatie": "white room",
            "speler": "Filip",
            "sum(punten)": "-32"
        }
    }
]

From what I read in the forums and in the tutorials, the above json should look like the following, in order to work with DataTables:


{
    "aaData": [
        [
            "2012-09-24 15:43:56",
            "white room",
            "Arne",
            "17"
        ],
        [
            "2012-09-24 15:43:56",
            "white room",
            "Bjorg",
            "26"
        ],
        [
            "2012-09-24 15:43:56",
            "white room",
            "Bram",
            "-11"
        ],
        [
            "2012-09-24 15:43:56",
            "white room",
            "Filip",
            "-32"
        ]
    ]
}


now, how do I have to change my php in order to get the above format? I'm really new to programming, so my knowledge of php is pretty limited and absolutely zero for js.

I thank you very much for your answer in advance!

Edit: maybe I should also add the page where the DataTable is generated too:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Test DataTables</title>
 
    <script src="jquery-1.4.4.min.js" type="text/javascript"></script>
 
    <script src="../datatables/media/js/jquery.dataTables.js"></script>
  
    <link href="jquery.dataTables.css" rel="stylesheet" type="text/css" />
 
    <script type="text/javascript">

			$(document).ready(function() {
			$('#example').dataTable( {
				"bProcessing": true,
				"sAjaxSource": "json.php",
				"bDeferRender": true
			} );
		} );
    </script>
</head>

<body> 
<div style="width:800px"> 
<table id="example"> 
<thead> 
<tr>
<th>kaarting</th>
<th>locatie</th>
<th>kaarter</th>
<th>punten</th>
</tr> 
</thead> 
<tbody> 
</tbody> 
</table> 
</div> 
</body> 
</html>

Viewing all articles
Browse latest Browse all 81688

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>