将格式赋予json字符串

时间:2013-03-22 17:56:14

标签: php jquery html json format

我有这个PHP代码,它从数据库中检索并保存一个字段

$dblink = mysql_connect('localhost', 'root', '') or die( mysql_error() );
mysql_select_db('payment');

$query = mysql_query("SELECT level FROM levelPrice WHERE code = 101");
$rows = array();
while($r = mysql_fetch_assoc($query)) {
    $rows[] = $r;
}
echo json_encode(array("#" => $rows));
?>

在我的HTML中,我有这个:

   <script>
    $.getJSON('getLevel.php', function(data) { 
    $("#level").val(JSON.stringify(data));
    });
  </script> 

问题是,它确实返回了值,但它出现了很多垃圾。它在网站上看起来像这样:{"#":[{"level":"4"}]} 当我只需要数字(例如#4)出现在网站上时,没有所有括号和内容。 谢谢!

2 个答案:

答案 0 :(得分:1)

您只需要从数据库中获取一行。

$query = mysql_query("SELECT level FROM levelPrice WHERE code = 101");
$row = mysql_fetch_assoc($query);
echo json_encode(array("#" => $row['level']));

然后代码创建一个简单的数组,JSON对其进行编码,输出:

{'#': 'LEVEL-HERE'}

答案 1 :(得分:0)

你正在使用一个函数来从javascript中获取json,并且你在php脚本中回显了json。结果就是json。

您可以在案例中使用load

$("#level").load('getLevel.php');

并将您的echo声明更改为:

echo '#' . $rows[0];

您也不需要生成数组,但如果您愿意,可以自行更改。