使用PHP和JavaScript时出现意外的令牌错误

时间:2017-01-10 14:02:48

标签: javascript php mysql charts google-visualization

目前我很难将数据从我的数据库加载到Google Charts,我正在关注this教程。

我正在尝试在我的网页中加载4个不同的图表。但是,每当PHP开始执行SQL语句时,我都会收到此错误:

Uncaught SyntaxError: Unexpected token <

Inspect元素显示: The errors that I get[2]

我希望每个图表都有同样的问题,所以我只会发布第一张图表的代码,如下所示:

<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
  var data = google.visualization.arrayToDataTable([

      ['Date', 'Visits'],
        <?php 
            $query = "SELECT count(ip) AS count, vdate FROM visitors GROUP BY vdate ORDER BY vdate";

            $exec = mysqli_query($con,$query);
            while($row = mysqli_fetch_array($exec)){

                echo "['".$row['vdate']."',".$row['count']."],";
            }
   ?>

    ]);

    var options = {
        title: 'Date wise visits'
    };
  var chart = new google.visualization.ColumnChart(document.getElementById("columnchart"));
  chart.draw(data, options);
}
</script>

错误将从PHP启动的同一行开始,所以我预计问题与此有关。我已经尝试了一些CDATA的东西,但这不会成功。

<script type="text/javascript">更改为<script type="text/html">会使错误消失,但不会让脚本生效,所以我在这里做错了什么?

1 个答案:

答案 0 :(得分:4)

  

您如何使用此http://localhostfile:///? - 弗雷德-ii-
  @ Fred-ii-谢谢!您发布的示例有效!非常感谢! - SmashingJummy

所以答案是你需要在浏览器中直接运行localhost而不是file:///,因为file:///不会解析PHP指令。

  • 我对此有一种感觉。