当使用php和sql时Google图表不会显示

当使用php和sql时Google图表不会显示

问题描述:

我使用Google图表创建一个简单的图表。我在执行数据时使用PHP和MYSQL。我在寻找答案,并尝试,但它并没有显示图表当使用php和sql时Google图表不会显示

这里是我的test.php的文件

<html> 
    <head> 
    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 
    <script type="text/javascript"> 
     google.charts.load('current', {packages: ['corechart']}); 
     google.charts.setOnLoadCallback(drawChart); 

     function drawChart() { 
     // Define the chart to be drawn. 
     var data = google.visualization.arrayToDataTable([ 
     ['Specialization', 'Facultyno'], 
     <?php 
     require_once('../mydb_connect.php'); 
     $query="SELECT distinct(s.specializationname) as 'specialization', count(fs.facultyid) as 'facultyno' from thesisdb.specialization s join facultyspecialization fs on s.specializationid=fs.specializationid group by s.specializationID;"; 

     $result = mysqli_query($dbc,$query); 
     while($row = mysqli_fetch_array($result)){ 

     echo "['".$row['specialization']."',".$row['facultyno']."],"; 
     } 
     ?> 

     ]); 
     var options = {'title':'Number of Faculty Specializations', 
         'width':1300, 
         'height':900}; 

     } 
     // Instantiate and draw the chart. 
     var chart = new google.visualization.ColumnChart(document.getElementById('no_of_specialization')); 
     chart.draw(data, options); 
    } 
    </script> 
    </head> 

    <body> 
    <div id="no_of_specialization"/> 
    </body> 
</html> 

在寻找这个问题,我是测试如果数据可以被执行,它的工作

这里是PHP代码

<?php 
     require_once('../mydb_connect.php'); 
     $query="SELECT distinct(s.specializationname) as specialization, count(fs.facultyid) as facultyno from thesisdb.specialization s join facultyspecialization fs on s.specializationid=fs.specializationid group by s.specializationID;"; 

     $result = mysqli_query($dbc,$query); 
     while($row = mysqli_fetch_array($result)) 
          { 
           echo "{$row['specialization']}"; 
           echo " - "; 
           echo "{$row['facultyno']}<br>"; 
          } 
     ?> 

这是应该在谷歌字符显示的数据TS

  • 人工智能 - 1
  • Biocomputation - 3
  • 计算机和网络安全 - 2
  • 人机交互 - 3
  • 信息管理与分析 - 1
  • 移动和互联网计算 - 1
  • 真实世界计算 - 1
  • 软件原理 - 2
  • 理论计算机科学 - 1
  • 我需要你的帮助。谢谢

    你的代码中的每一件事都可以。但你正在使用一个额外的治疗大括号“}”。在这段代码后删除额外的括号'}'。

    var options = {'title':'Number of Faculty Specializations', 
             'width':1300, 
             'height':900}; 
    

    如果你遇到问题,找到额外治疗大括号“}”。只需复制并粘贴以下代码。

    <html> 
    <head> 
        <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 
        <script type="text/javascript"> 
         google.charts.load('current', {packages: ['corechart']}); 
         google.charts.setOnLoadCallback(drawChart); 
    
         function drawChart() { 
          // Define the chart to be drawn. 
          var data = google.visualization.arrayToDataTable([ 
           ['Specialization', 'Facultyno'], 
           <?php 
           require_once('../mydb_connect.php'); 
           $query="SELECT distinct(s.specializationname) as 'specialization', count(fs.facultyid) as 'facultyno' from thesisdb.specialization s join facultyspecialization fs on s.specializationid=fs.specializationid group by s.specializationID;"; 
    
           $result = mysqli_query($dbc,$query); 
           while($row = mysqli_fetch_array($result)){ 
    
            echo "['".$row['specialization']."',".$row['facultyno']."],"; 
           } 
           ?> 
    
          ]); 
          var options = {'title':'Number of Faculty Specializations', 
           'width':1300, 
           'height':900}; 
    
         // Instantiate and draw the chart. 
         var chart = new google.visualization.ColumnChart(document.getElementById('no_of_specialization')); 
         chart.draw(data, options); 
         } 
        </script> 
    </head> 
    
    <body> 
    <div id="no_of_specialization"/> 
    </body> 
    </html>