Php 如何仅在mysql条件超过特定日期时启用它

Php 如何仅在mysql条件超过特定日期时启用它,php,mysql,Php,Mysql,在这里,我需要检查我的数据库,如果达到当前日期,那么我必须执行编码,否则它必须被跳过 function list_hotel_default($country,$city,$location,$fromdate,$todate,$roomtype,$adults,$child_no) { $condition="country='$country' AND city='$city' AND location='$location' AND show2web='1' AND e

在这里,我需要检查我的数据库,如果达到当前日期,那么我必须执行编码,否则它必须被跳过

function list_hotel_default($country,$city,$location,$fromdate,$todate,$roomtype,$adults,$child_no)
{   
  $condition="country='$country' AND city='$city' AND location='$location'  AND     show2web='1' AND expiry_date is greater than current date";                              
  $active_hotel_get_qry =   mysql_query("SELECT * FROM  hoteldetails WHERE ".$condition);
}
否则,它就不应该执行


如何做到这一点?

您可以使用MySQLs inbuit date函数,特别是返回当前时间和日期的函数:

$condition="country='$country' AND city='$city' AND location='$location'  
AND     show2web='1' AND expiry_date > now()"; 

这是假设
到期日期实际上是一个日期或日期时间字段。

如果只想用日期值检查它,则可以使用

function list_hotel_default($country,$city,$location,$fromdate,$todate,$roomtype,$adults,$child_no)
{

  $condition="country='$country' AND city='$city' AND location='$location'  AND     show2web='1' AND expiry_date > CURDATE()"; 

  $active_hotel_get_qry =   mysql_query("SELECT * FROM  hoteldetails WHERE ".$condition);
}

通过连接字符串来构建查询,这些字符串可能是用户输入,但容易受到SQL注入的攻击。因此,请转义您的输入,或者使用类似PHP PDO扩展的东西,它可以为您实现这一点。请参见此处: