Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从数据库中找出某个特定日期是否介于两个日期之间?_Php_Mysql_Date - Fatal编程技术网

Php 如何从数据库中找出某个特定日期是否介于两个日期之间?

Php 如何从数据库中找出某个特定日期是否介于两个日期之间?,php,mysql,date,Php,Mysql,Date,您未能获取查询的实际结果。实际上,您需要调用两次mysql\u query()(它返回一个句柄)。在您的情况下,使用mysql\u num\u rows()获取行数,这将告诉您车辆是否可用。问题在于您没有正确处理查询结果。要解决此问题,您可以尝试以下方法: <?php $hostname = "localhost"; $db_user = "root"; $db_password = ""; $database = "rentcar"; $db_table = "r

您未能获取查询的实际结果。实际上,您需要调用两次
mysql\u query()
(它返回一个句柄)。在您的情况下,使用
mysql\u num\u rows()
获取行数,这将告诉您车辆是否可用。

问题在于您没有正确处理查询结果。要解决此问题,您可以尝试以下方法:

<?php

 $hostname = "localhost";
 $db_user = "root";  
 $db_password = "";  
 $database = "rentcar";  
 $db_table = "reservation"; 

 $db = mysql_connect($hostname, $db_user, $db_password); 

 mysql_select_db($database,$db);

 $date1 = $_POST['datepicker1'];

 $date2 = $_POST['datepicker2'];


 $start_date = strtotime($date1);

 $end_date = strtotime($date2);

 $query  =  mysql_query("SELECT * FROM reservation WHERE  ('pudate'>".$start_date." AND         
 'dodate'<".$end_date.") OR ('pudate'<".$start_date." AND 'dodate'>".$end_date." ) OR 
  ('pudate'<".$end_date." AND 'dodate'>".$end_date.") OR ('pudate'<".$start_date." AND 
  'dodate'>".$start_date." )");

 $result = mysql_query($query); 

  if ($result) 

 {
   echo "vehicle is available";
 }

 else
 {
 echo "vehicle is not available";    

  }

 ?>
$result=mysql\u query(“从预订中选择*”('pudate'>“$start\u date.”和

“dodate”你能用现实世界的术语解释这些条件应该如何运作吗?另外,你可能想养成编写查询的习惯,这样它们在代码中更容易阅读。它会检查我的取车日期是否在开始日期和结束日期之间,或者我的下车日期是否在开始日期和结束日期之间e它将显示该车不可用,否则,如果不可用,则它将显示该车可用它将显示以下错误mysql\u num\u rows():在第40行的C:\wamp\www\rentcar\search\u result.php中,提供的参数不是有效的mysql结果资源
$result =  mysql_query("SELECT * FROM reservation WHERE  ('pudate'>".$start_date." AND         
  'dodate'<".$end_date.") OR ('pudate'<".$start_date." AND 'dodate'>".$end_date." ) OR 
  ('pudate'<".$end_date." AND 'dodate'>".$end_date.") OR ('pudate'<".$start_date." AND 
  'dodate'>".$start_date." )");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    //$row contains the results of your query  
}