php日期范围仅选择一年的数据

php日期范围仅选择一年的数据,php,mysql,date,Php,Mysql,Date,我有一个php代码,它从数据库中选择从startdate到enddate的项。但是,如果我在2017年的某个日期和2017年的另一个日期之间进行选择,则效果良好;如果我在2018年的某个日期和2018年的另一个日期之间进行选择,则效果良好;但如果我在2017年至2018年之间进行选择,则效果不理想 下面是我的代码 /// this is the php selecting if (array_key_exists('generate', $_POST)){ $startdate = ($_PO

我有一个php代码,它从数据库中选择从startdate到enddate的项。但是,如果我在2017年的某个日期和2017年的另一个日期之间进行选择,则效果良好;如果我在2018年的某个日期和2018年的另一个日期之间进行选择,则效果良好;但如果我在2017年至2018年之间进行选择,则效果不理想

下面是我的代码

/// this is the php selecting
if (array_key_exists('generate', $_POST)){
 $startdate = ($_POST['startdate']);
 $enddate = ($_POST['enddate']);
 $getoutletid = ($_POST['outletid']);
    }

//then this is the query
$q = "
SELECT * 
  FROM ".TBL_SALES_LOGS." 
 WHERE dateofsales BETWEEN '$startdate' and '$enddate' 
 ORDER 
    BY timestamp
    "
这是我在同一页上回显时代码的返回日期格式 2017年6月11日至2018年9月1日
请给出几个“开始日期”/“结束日期”值的示例。您能发布表格结构吗??确切的例子(开始日期和结束日期),它不起作用。您要将什么日期格式传递到SQL查询中?忘记PHP吧。相反,请参阅:@ademaintenant请使用您的表格结构详细信息更新您的帖子。另外,更新获得正确输出的开始和结束日期