我有一个基于MySQL数据绘制图表的代码。但是,我想以下列方式改进此代码 - 如果MySQL结果集为空,那么我想显示文本消息(例如“无输入数据”)而不是图表。
我正在寻找更新mainFunc.php
的方法,以便它可以读取mainChart.php
的输出并显示图表或短信。如何以最简单的方式做到这一点?
myChart.php
include_once '../include/DatabaseConnector.php';
$query1="SELECT xxx, yyy FROM mySQLTable;";
$result1=DatabaseConnector::ExecuteQueryArray($query1);
$num_results = mysql_num_rows($result1);
if ($num_results > 0){
// do something
echo 1;
}
else echo 0;
mainFunc.php
<div class="scrollbar" id="chart">
<img src="charts/myChart.php">
</div>
答案 0 :(得分:2)
关于jpgraph的棘手部分是它返回一个图像文件,所以你不能只回显jpgraph文件中的一些文本。您有两种选择:
要做#1,只需从mygraph.php中提取您的查询代码(如果需要,可将其放入不同的包含文件中)。查询后,计算结果。如果为零,则返回一些文本并将其写入页面。如果有结果,请像现在一样返回一个img标签,并将其写入页面。
现在,由于mygraph.php中不再进行查询,您如何获取图表数据?最简单的方法就是在查询字符串中传递它,mygraph.php可以从$_GET
读取它。查看documentation on passing data to jpgraph了解更多选项。
Here's some code,它向您展示如何创建由文本消息组成的图像。我已经使用了没有安装truetype支持的服务器,这可能会使jpgraph的文本看起来有点不稳定,所以请确保它在您的生产服务器上看起来令人满意。