PHP/mysql语法错误未捕获令牌?
我的PHP在这里似乎不起作用,我只做了一个查询no join等,当我指定要显示的列等时,这似乎很好 但是,当我在尝试指定数据集的列时使用join进行查询时,我在浏览器控制台中不断收到systex错误 我看不出有什么问题PHP/mysql语法错误未捕获令牌?,php,mysql,Php,Mysql,我的PHP在这里似乎不起作用,我只做了一个查询no join等,当我指定要显示的列等时,这似乎很好 但是,当我在尝试指定数据集的列时使用join进行查询时,我在浏览器控制台中不断收到systex错误 我看不出有什么问题 <?php $month = $_POST['month']; $year= $_POST['year']; ?> <?php $query = mysql_query("Select donation_tracker.d
<?php
$month = $_POST['month'];
$year= $_POST['year'];
?>
<?php $query = mysql_query("Select donation_tracker.donation_Amount, donation_tracker.Location_ID, donation_tracker.Month, donation_tracker.Year,donation_tracker.City_ID,city_markers.City_Name, location_markers.Location_Name from donation_tracker inner join location_markers on donation_tracker.Location_ID = location_markers.Location_ID inner join city_markers on donation_tracker.City_ID = city_markers.City_ID where donation_tracker.Month= '$month' and donation_tracker.Year = '$year'");
$numrows=mysql_num_rows($query);
while($row = mysql_fetch_array($query)){
$data[0] = $row['donation_tracker.donation_Amount'];
$data[1] = $row['location_markers.Location_Name'];
echo "['".$data[0]."', ".$data[1]."],";
}
?>
错误消息是:
Undefined index: month ... on line 41
Undefined index: year ... on line 42
如果第41行是上述代码的第2行,则您尚未发布月份和年份的值
试试像这样的东西
if(isset($_POST['month'])) {
$month = $_POST['month'];
} else {
$month = 'January'; // put in your default value
}
if(isset($_POST['year'])) {
$year = $_POST['year'];
} else {
$year = '2013'; // put in your default value
}
$query = mysql_query("Select donation_tracker.donation_Amount, donation_tracker.Location_ID, donation_tracker.Month, donation_tracker.Year,donation_tracker.City_ID,city_markers.City_Name, location_markers.Location_Name from donation_tracker inner join location_markers on donation_tracker.Location_ID = location_markers.Location_ID inner join city_markers on donation_tracker.City_ID = city_markers.City_ID where donation_tracker.Month= '$month' and donation_tracker.Year = '$year'");
$numrows=mysql_num_rows($query);
$comma="";
while($row = mysql_fetch_array($query)) {
$data = array();
$data[0] = $row['donation_Amount'];
$data[1] = $row['Location_Name'];
echo $comma."['".$data[0]."','".$data[1]."']";
$comma=",";
}
浏览器控制台中的语法错误?这不是javascript或css错误吗?如果您所问的php正在生成json,那么您就错了。您应该创建一个php数组,然后使用php的内置方法将php数组转换为json。您能告诉我们您得到的确切错误吗?对不起,但是我的眼睛还不够好,无法看到这个错误消息……它突出显示了一个break标记。虽然我认为我的表单代码(在你发表评论之前没有添加)是在发布变量,但你说的很有意义(这不是调用错误的旧代码。它现在正在运行吗?很抱歉,我替换了我的两个变量$month=$\u POST['month']和$year=$\u POST['year'];对于您建议的代码,这两种代码对我都不起作用。它现在是否使用更正的代码运行?表中的generation_tracker.Month是否真的是字符串列?不起作用意味着什么?您现在是否收到另一条错误消息?
Undefined index: month ... on line 41
Undefined index: year ... on line 42
if(isset($_POST['month'])) {
$month = $_POST['month'];
} else {
$month = 'January'; // put in your default value
}
if(isset($_POST['year'])) {
$year = $_POST['year'];
} else {
$year = '2013'; // put in your default value
}
$query = mysql_query("Select donation_tracker.donation_Amount, donation_tracker.Location_ID, donation_tracker.Month, donation_tracker.Year,donation_tracker.City_ID,city_markers.City_Name, location_markers.Location_Name from donation_tracker inner join location_markers on donation_tracker.Location_ID = location_markers.Location_ID inner join city_markers on donation_tracker.City_ID = city_markers.City_ID where donation_tracker.Month= '$month' and donation_tracker.Year = '$year'");
$numrows=mysql_num_rows($query);
$comma="";
while($row = mysql_fetch_array($query)) {
$data = array();
$data[0] = $row['donation_Amount'];
$data[1] = $row['Location_Name'];
echo $comma."['".$data[0]."','".$data[1]."']";
$comma=",";
}