从 PHP => JSON => JS 时为空值
Empty value when going from PHP => JSON => JS
>我已经创建了一个到我的数据库的PHP连接,并进行了以下查询:
$taxRates = array();
while($row = mysql_fetch_assoc($result)) {
$taxRates[] = $row['mar_tax_rate'];
}
然后,我将结果编码如下:
$jsonobj = json_encode($taxRates, JSON_NUMERIC_CHECK);
echo "This is jsonobj:<br>" . $jsonobj . "<br>";
其中返回:
This is jsonobj:
[0,0.35,0.35,0.35,0.35,0.35,0.35,0.35,0.35]
我遇到的问题是这个。 当我尝试将这些结果回显到 JS 中时,我的结果是空的(据我所知)——不是一个空数组,什么都没有。这就是我尝试将结果输入 JS 的方式:
data:[<?php echo $jsonobj; ?>]
其中返回:
data:
我试图使用
alert("<?php echo $jsonobj; ?>");
这将生成警报,但也是空的。
有什么想法吗?
以下是完整的代码:
<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<script type="text/javascript" src="includes/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="includes/js/highcharts.2.3.2.js"></script>
<script type="text/javascript" src="includes/js/highstock.src.js"></script>
<script type="text/javascript">
$(document).ready(function() {
drawChart();
});
function drawChart() {
alert("<?php echo join($jsonobj); ?>");
var chart = new Highcharts.Chart({
chart: {
renderTo: 'chart',
type: 'column',
},
credits: {
enabled: false
},
series: [{
data:[<?php echo $jsonobj; ?>]
}]
});
};
</script>
</head>
<body>
<button style="height:100px; width:300px;" onclick="drawChart();">Redraw the Chart</button><br />
<div id="chart"></div>
<?php
$link = mysql_connect('url', 'username', 'password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
//mysql_close($link);
$db_selected = mysql_select_db('bloch',$link);
if (!$db_selected) {
die ('Can''t use Bloch Database : ' . mysql_error());
}
$result = mysql_query('SELECT mar_tax_rate from bloch.bloch_deficit');
if (!$result) {
die('Invalid query: ' . mysql_error());
}
$taxRates = array();
while($row = mysql_fetch_assoc($result)) {
$taxRates[] = $row['mar_tax_rate'];
}
$jsonobj = json_encode($taxRates, JSON_NUMERIC_CHECK);
echo "This is jsonobj:<br>" . $jsonobj . "<br>";
?>
</body>
</html>
在尝试将变量放入 HTML 之前,您的变量尚未定义。 在 HTML 之前使用您需要的内容创建变量,以便将其正确发送到页面。
相关文章:
- 映射数组ES6时考虑空值
- Model中的Typeahead返回空值以形成输入字段
- JavaScript-HTML表单到JSON(空值)和格式
- webkit输入类型=在错误日期发送空值的日期
- 如何使用字符串创建空的JSON键(是否嵌套)
- 使用挖空从 JSON 预填充所选值以进行多项选择
- JSON 是否应包含空值
- jquery $.ajax 的 MVC 3 反序列化请求 json 到对象中填充空值而不是空白字符串
- Json - 检查子节点空值
- Json 数组返回空值
- JSON正在删除包含空值的属性
- 使用angular js的Json rest客户端无法填充数据(空值)
- 如何检查json中的空值
- 解析JSON对象数组-空值防止反转
- 如何在JSON对象中包含空值作为占位符
- 将表单序列化为不带空值的json
- 按字母顺序对 JSON 进行排序(最后为空值)
- 从 PHP => JSON => JS 时为空值
- 用数组中的空值反序列化JSON
- JSON对象的已知非空值字段返回空字符串