PHP - 检查日期范围

时间:2016-05-30 04:28:19

标签: php sql date

我有一个名为cells.append("text") .attr("x",function (d) { return d.x + d.dx / 2 }) .attr("y",function (d) { return d.y + d.dy / 2 + 15 })//15 pixels below the name label. .attr("text-anchor", "middle") .text(function (d) { return d.children ? null : d.value; }) 的数据库表。此表中的字段为:period。日期格式为code | name | status | open_date | close_date

这就是我想要的:如果今天的日期是数据库中的日期范围,则该网站将不会显示表格和表格列。

这是我的代码:

Y/m/d

但是,无论今天的日期超出范围还是范围,表格和表格列都不会显示。怎么了?请解释一下你的答案。感谢

3 个答案:

答案 0 :(得分:0)

使用strtotime()将日期转换为时间戳,然后比较

$openDateStr = strtotime($row3['open_date']);
$closeDateStr = strtotime($row5['close_date']);
$todayStr = strtotime(date("Y/m/d"));
//compare
if($todayStr >= $openDateStr && $todayStr <= $closeDateStr) {
..

答案 1 :(得分:0)

你所做的一切都是正确的。只是一些小错误。

  1. 没有$ row3变量。仅限$ row5。所以将row3更改为row5。
  2. 在选择查询中,您只选择了close_date。你还需要选择open_date。
  3. 接下来使用strtotime()函数进行比较。

答案 2 :(得分:0)

您的代码没有什么真正的问题。只需几个矿工修复。 <{1}}应该在您的代码中$row3

$row5

然后,你的HTML

// Create a DateTime object
$now = new DateTime();

$stmt = "select close_date
from period
where status='1'
";

$result5 = mysqli_query($link, $sql5);

if (!$result5) {
    die("<h3>SQL Error</h3>" . $sql5);
}
$row5 = mysqli_fetch_array($result5);

$date = date("Y/m/d");