data.php:1未捕获的语法错误:意外的令牌:


data.php:1 Uncaught SyntaxError: Unexpected token :

我有一个非常简单的代码

<?php 
header('Content-Type: application/json');
include 'config.php';
$query = mysql_query("SELECT str_data ,occasione FROM Evento");
$arraydata = array();
$arraynome = array();
while($row = mysql_fetch_assoc($query)){
   $arraydata[] = date("m-d-Y", $row['str_data']);
   $arraynome[] = $row['occasione'];
}
$datanome = array_combine($arraydata, $arraynome);
echo json_encode($datanome);
?>

但当我在那个网站上使用chrome控制台时http://www.ldida.altervista.org/calendario/index2.html它提供

data.php:1 Uncaught SyntaxError: Unexpected token :

为什么?

您将data.php包含为text/javascript类型。因此,您的浏览器尝试将其解析为javascript。data.php的输出为:

{"04-20-2016":"Compleanno","05-14-2016":"Compleanno","05-03-2016":"Battesimo"}

这不是有效的javascript,因此出现错误。这不是php错误,而是javascript解析错误。

从HTML/源代码中删除<script type="text/javascript" src="js/data.php"></script>

您通过jQuery调用它——您不需要将它包含在页面本身中。

您还将其包含为text/javascript,但事实并非如此。