当我添加额外的行进行重定向时,Highchart 不打印 json
Highchart not printing json when I add extra line to redirect
如果可能的话,我希望得到一些帮助。我正在使用高图表来生成图表。我有一个生成数组的数据.php文件。
数组由表单中的动态查询并使用json_encode创建。打印数组后:打印 $array_final1;我想重定向到我有我的图表的页面:演示.php通过使用标题('位置:演示.php');在下一行。
如果我添加重定向行,它会将我带到页面,但没有数据导入到图表中。
数据.php
<?php
session_start();
$con = mysql_connect("","","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
$start = $_SESSION['start'];
$end = $_SESSION['end'];
$agent = $_SESSION['Agent'];
mysql_select_db("db", $con);
$query = mysql_query("QUERY";
$category = array();
$category['name'] = 'Col';
$series1 = array();
$series1['name'] = 'Total';
while($r = mysql_fetch_array($query)) {
$category['data'][] = $r['Col'];
$series1['data'][] = $r['Total'];
}
$result = array();
array_push($result,$category);
array_push($result,$series1);
$array_final = json_encode($result);
$array_final1 = preg_replace('/"(-?'d+'.?'d*)"/', '$1', json_encode($result));
print $array_final1;
header('location: demo.php');
mysql_close($con);
?>
任何帮助将不胜感激。谢谢
当然,不会导入任何数据,您不会发送任何内容。
既然您已经在使用会话,为什么不将要在另一个页面中使用的数据放入$_SESSION
?
$_SESSION['array_final'] = $array_final1;
// the redirect
-- 演示中.php --
只需使用
$_SESSION['array_final']
我和你有同样的问题,但我找到了解决方法。
如果我正确理解了您的问题,那么您有一个 data.php 页面,它从 MySQL 获取数据并生成一个数组列表供 Highcharts javascript 阅读。在demo.php页面中,你有Highcharts javascript,它调用数据.php来获取信息。
无需使用标头("位置...")进行重定向。在demo.php页面中,您应该生成一个会话来存储值,而在数据中.php检查会话是否有值,否则执行某些操作或不执行任何操作。
下面是我的例子,
<?php
if(isset($_POST['sort'])){
$from=$_POST['SDate'];
$to=$_POST['EDate'];
$sTime=$_POST['STime'];
$eTime=$_POST['ETime'];
session_start();
$_SESSION['start']=$from." ".$sTime;
$_SESSION['end']=$to." ".$eTime;
}
?>
我有一个按钮名称/id='sort',点击后将运行上面的代码。它将抓取 4 个下拉列表中的选定值并将它们附加到一起以形成开始日期/时间和结束日期/时间,然后将其存储到 2 个会话对象中以供使用。
现在在数据中.php我有,
session_start();
if(isset($_SESSION['start'])){
$starter = $_SESSION['start'];
$ender = $_SESSION['end'];
$sth = mysql_query("SELECT * FROM table WHERE roomID='501' AND (dateTime BETWEEN '$starter' AND '$ender') ORDER BY recordID");
$rows = array();
$rows['name'] = 'DateTime';
while($rr = mysql_fetch_assoc($sth)) {
$rows['data'][] = $rr['dateTime'];
}
$sth = mysql_query("SELECT * FROM table WHERE roomID='501' AND (dateTime BETWEEN '$starter' AND '$ender') ORDER BY recordID");
$rows1 = array();
$rows1['name'] = 'RoomTemperature';
while($r = mysql_fetch_array($sth)) {
$rows1['data'][] = $r['roomTemp'];
}
$result = array();
array_push($result,$rows);
array_push($result,$rows1);
$help = print json_encode($result, JSON_NUMERIC_CHECK);
mysql_close($con);
}
else{
//do something or nothing
}
因此,每次我单击"排序"按钮时,下拉列表中选择的任何内容都将存储在会话中.php哪些数据将能够抓取。如果我没错的话.php如果你愿意,你可以在演示中的Highcharts javascript部分之后销毁会话对象。
希望这有帮助。
- Highchart and json data
- 数据库、servlet、json、javascript和highchart饼图
- 如何在JSON中转义逗号以供highchart读取
- 将 JSON 文件加载到 Highchart HTML 页面
- 当我添加额外的行进行重定向时,Highchart 不打印 json
- 使用 AJAX JSON 数据创建 HighChart
- 来自 PHP JSON 的 Highchart Feed 数据
- 如何更改用于将数据加载到Highchart的JSON格式
- 带有json结果列问题的Highchart瀑布
- 从json中的highchart中读取图表详细信息
- highchart mysql-json,带有where条件的下拉选择值
- 如何将不同格式的json加载到Highchart
- 使用json和post-url将数据放在Highchart中
- 如何通过json数据动态获取基线highchart
- 如何使用来自Ajax请求的json数据生成highchart(使用angular js)
- 导出JSON数据到Highchart(饼)
- 如何填充动态json值钻下highchart
- Highchart:工具提示的Json数组
- 从MySQL JSON输出渲染Highchart的问题
- Json的语法是有效的,但是HighChart不能正确显示序列