[英]Date range with MySQL and PHP
尝试获取特定日期范围内的表格时,似乎出现问题。 这是我的PHP代码。 我尝试使用BETWEEN和<=来获取日期范围,但它似乎不起作用。 当我将结果打印到控制台时,我只是得到一个Uncaught SyntaxError:意外的数字。 有什么建议么?
if($_POST['subdate'] != "")
{
$sdate = dateClean($_POST['subdate']);
$edate = dateClean($_POST['subdateend']);
if($checkWhereVar==0)
{
if($_POST['subdateend'] != "")
{
$longQuery.= "SubmissionDate >= '".$sdate."' AND SubmissionDate <= '".$edate."";
echo ("<script>console.log('$longQuery')</script>");
}
else{
$date = date('Y/m/d H:i:s');
$edate = $date;
$longQuery.= "SubmissionDate >= '".$sdate."' AND SubmissionDate <= '".$edate."";
}
//$longQuery.= " SubmissionDate BETWEEN = '".$sdate."'";
$checkWhereVar = 1;
}
else
{
$date = date('Y/m/d H:i:s');
$edate = $date;
echo ("<script>console.log('in sub date else')</script>");
$longQuery.= "SubmissionDate >= '".$sdate."' AND SubmissionDate <= '".$edate."";
}
$filter .= " Submission Date: <i>".$_POST['subdate']."</i>";
}
如果不看脚本的其余部分,就很难诊断出来,但是似乎您的字符串连接可能是导致这种情况的因素:
$longQuery.= "SubmissionDate >= '".$sdate."' AND SubmissionDate <= '".$edate."";
只需在开头添加一个空格,如下所示:
$longQuery.= " SubmissionDate >= '".$sdate."' AND SubmissionDate <= '".$edate."";
另外,您似乎在字符串末尾缺少单引号。 因此,只需执行以下操作:
$longQuery.= " SubmissionDate >= '$sdate' AND SubmissionDate <= '$edate'";
使用双引号时,可以进行字符串替换,因此不必将这些行与串联.
显示每个字符串的位置。
就是说,这是我用上面提到的内容的每个实例来清理您的代码。
if($_POST['subdate'] != "")
{
$sdate = dateClean($_POST['subdate']);
$edate = dateClean($_POST['subdateend']);
if($checkWhereVar==0)
{
if($_POST['subdateend'] != "")
{
$longQuery.= " SubmissionDate >= '$sdate' AND SubmissionDate <= '$edate'";
echo ("<script>console.log('$longQuery')</script>");
}
else{
$date = date('Y/m/d H:i:s');
$edate = $date;
$longQuery.= " SubmissionDate >= '$sdate' AND SubmissionDate <= '$edate'";
}
//$longQuery.= " SubmissionDate BETWEEN = '$sdate'";
$checkWhereVar = 1;
}
else
{
$date = date('Y/m/d H:i:s');
$edate = $date;
echo ("<script>console.log('in sub date else')</script>");
$longQuery.= " SubmissionDate >= '$sdate' AND SubmissionDate <= '$edate'";
}
$filter .= " Submission Date: <i>".$_POST['subdate']."</i>";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.