如何在php的日期范围内找到mysql表中多个日期的出现次数。

如何在php的日期范围内找到mysql表中多个日期的出现次数。,php,mysql,Php,Mysql,我试图统计数据库表holidays中日期范围start和end内出现的日期。但不知怎的,我犯了个错误。请帮我输入这个代码。这是我的密码 HTML文件 <html> <body> <form method="post" name="form1" action="occurrences.php"> From date:<br> <input type="date" name="fromdate" id="from"> <b

我试图统计数据库表
holidays
中日期范围
start
end
内出现的日期。但不知怎的,我犯了个错误。请帮我输入这个代码。这是我的密码

HTML文件

<html>
<body>
<form method="post" name="form1" action="occurrences.php">
  From date:<br>
  <input type="date" name="fromdate" id="from">
  <br>
  To date:<br>
  <input type="date" name="todate" id="to">
  <br><br>
  <input type="submit" name="submit" value="Submit">
  </form>  
</body>
</html>

起始日期:

迄今为止:


accurrences.php

require('config.php');
$start = isset($_POST['fromdate']) ? $_POST['fromdate']:NULL;
$end = isset($_POST['todate']) ? $_POST['todate']:NULL;
$catch=0;
$statement = mysql_query("SELECT holiday FROM holidays");
$dates=Array();

while($row = mysql_fetch_array($statement)){

  // add each row returned into an array
  $dates[] = $row;
foreach($dates AS $date) {
    $timestamp = strtotime($date);
    if($timestamp >= $start && $timestamp <= $end) {
        $catch++;
    } 
}
}
echo $count;
require('config.php');
$start=isset($\u POST['fromdate'])$_POST['fromdate']:空;
$end=isset($_POST['todate'])$_POST['todate']:空;
$catch=0;
$statement=mysql_查询(“从假日中选择假日”);
$dates=Array();
while($row=mysql\u fetch\u数组($statement)){
//将返回的每一行添加到数组中
$dates[]=$row;
foreach($日期作为$日期){
$timestamp=strottime($date);

如果($timestamp>=$start&&$timestamp我真的不知道这是否回答了您的问题,但我认为您应该使用SQL查询,如下所示:

SELECT COUNT(holiday) FROM holidays WHERE holiday BETWEEN $fromdate AND $todate
这里$todate和$fromdate必须具有从post获得的值,并且必须是整数


我希望这会有所帮助

请停止使用PHP不推荐的mysql\uuApi,然后查看