Php jquery:给用户一个";无数据“;而不是打印空图形

Php jquery:给用户一个";无数据“;而不是打印空图形,php,jquery,mysql,sql,charts,Php,Jquery,Mysql,Sql,Charts,我有一个基于MySQL数据绘制图表的代码。但是,我希望通过以下方式改进此代码-如果MySQL结果集为空,那么我希望显示文本消息(例如“无输入数据”),而不是图表 我正在寻找一种更新mainFunc.php的方法,以便它能够读取mainChart.php的输出并显示图表或文本消息。如何以最简单的方式做到这一点 myChart.php include_once '../include/DatabaseConnector.php'; $query1="SELECT xxx, yyy FROM

我有一个基于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;
<div class="scrollbar" id="chart">
    <img src="charts/myChart.php">
</div>
mainFunc.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;
<div class="scrollbar" id="chart">
    <img src="charts/myChart.php">
</div>

关于jpgraph,最棘手的部分是它返回一个图像文件,因此您不能只在jpgraph文件中回显一些文本。您有两个选择:

  • 检测mygraph.php之外缺少的结果,并首先避免调用mygraph.php
  • 使用JPgraph的书写(绘制)文本工具制作一个显示“未找到结果”的图像
  • 不检测结果并跳过图表 要执行#1,只需从mygraph.php中提取查询代码(如果需要,将其放入另一个include文件中)。查询后,计算结果。如果没有,返回一些文本并将其写入页面。如果有结果,像现在一样返回一个img标记,并将其写入页面

    现在,由于查询不再在mygraph.php中进行,您如何将数据转换为图形?最简单的方法就是在查询字符串中传递它,mygraph.php可以从
    $\u GET
    读取它。查看更多选项

    绘制“无数据”消息
    来自jpgraph网站,向您展示如何创建包含文本消息的图像。我使用的服务器没有安装truetype支持,这会使jpgraph的文本看起来有点不稳定,因此请确保它在您的生产服务器上看起来令人满意。

    我认为PHP不适合绘制向量。绘制图表没有问题-我使用的是返回图像的jpgraph。现在我想改进代码,避免在myFunc返回0时绘制图表。这应该很简单,但我只是个新手。很好的解决方案。我喜欢“画一条“没有数据”的信息”