Hi! I want to share with you a simple function that thakes an associative array returned from a mysql_fetch_assoc() and outputs a json object;
usage: in php print "var response=".jsoner($ar); //where $ar is somethin like that :> array(0=>array("id"=>"3","title"=>"hello world"), 1=>array("id"=>"6","title"=>"ciao mondo")); the typical array returned by mysql_fetch_assoc(); //it will output: var response= {"0":{"id":"3","title":"hello world"},"1": {"id":"6","title":"ciao mondo"}; in jQuery or normal javascript eval(responseFromServer); //returns the "response" object; alert(response.1.title); //will output "ciao mondo" and you can use the form response[1].title too Here we go: <?php //PHP Jsoner 0.9 by resetstudio // mysql->php->js data exchange function // works with php 4.0+ function jsoner($ar) { $res=null; $ir=0; if(is_array($ar)) { $res="{"; foreach($ar as $aro) { $res.="\"$ir\" : {"; $post_k=array_keys($aro); $post_v=array_values($aro); for($i=0;$i<= count($post_k)-1; $i++) { if(is_string($post_v[$i])) { $res.="$post_k[$i] : \"$post_v[$i]\" , "; } else $res.="$post_k[$i] : $post_v[$i] , "; } $res=substr($res,0,-2)."},"; $ir++; } if ($res != null) { $res=substr($res,0,-1)."};"; } } return $res; } ?>