javascript - 将 PHP 与 JavaScript 结合使用时出现意外的 token 错误

标签 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">使错误消失,但不会让脚本工作,那么我在这里做错了什么?

最佳答案

how are you using this, as http://localhost or file:///? – Fred -ii-
@Fred-ii- thanks! The example you posted worked! Many thanks! – SmashingJummy

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

  • 我对此有一种感觉。

关于javascript - 将 PHP 与 JavaScript 结合使用时出现意外的 token 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41570689/

相关文章:

javascript - 使用 ES6 Promises 惯用地处理前置条件

javascript - 使用 jQuery 滚动时动态调整 div 的大小

php - 无法访问 Laravel 中的一个特定模型,得到一个空白页面

php - 在Kubernetes中部署Wordpress的存储策略

mysql - 尝试确定此方法参数的来源

javascript - jQuery 中的旋转轮

javascript - &lt;input type ="number"> 不会阻止输入无效数字,但 "element.value"不允许我更正它们

php - 使用 PHP 输出谷歌搜索结果?

MySQL BETWEEN 用于保存为字符串的日期

php - 如何将来自两个不同 MySQL 表的元素打印在一起