Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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 MySQL为输出选择特定日期_Php_Mysql_Sql_Datetime_Where Clause - Fatal编程技术网

Php MySQL为输出选择特定日期

Php MySQL为输出选择特定日期,php,mysql,sql,datetime,where-clause,Php,Mysql,Sql,Datetime,Where Clause,我在做一个粗俗的约会计划,只是为了好玩 我有一个页面可以显示可用的约会 我只想显示30天的约会,也就是一个月,未预订的aka user_id=0 具有与其帐户关联的用户id的已预订约会 我一直在想如何告诉MySQL只显示日期介于今天和一个月之后的约会 该页面使用PHP和使用PDO的MySQL 我对PDO最满意,这就是我使用它的原因 我看到的是使用DATE_ADD()、CURDATE()+INTERVAL,以及我在页面上看到的内容 <?php //opens database pat

我在做一个粗俗的约会计划,只是为了好玩

我有一个页面可以显示可用的约会

我只想显示30天的约会,也就是一个月,未预订的aka user_id=0

具有与其帐户关联的用户id的已预订约会

我一直在想如何告诉MySQL只显示日期介于今天和一个月之后的约会

该页面使用PHP和使用PDO的MySQL

我对PDO最满意,这就是我使用它的原因

我看到的是使用DATE_ADD()、CURDATE()+INTERVAL,以及我在页面上看到的内容

<?php
    //opens database path
    $db = new PDO(DB_PATH, DB_LOGIN, DB_PW);
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    $today = array(date(Y), date(m), date(d));
    
    $result = $db->query("
SELECT * 
  FROM appt 
 WHERE DAY(date) < $today[3] 
   AND MONTH(date)=today[2]+1 
 ORDER 
    BY date DESC
     , time DESC
");
    foreach($result as $row)
    {
        print "<tr>";
        print "<td><input type='checkbox' name='id[]' value=".$row['id']."></td>";
        print "<td>".$row['date']."</td>";
        print "<td>".$row['time']."</td>";
        print "<td>".$row['doctor']."</td>";
        print "</tr>";
    }
  
  
  
  ?>
如何告诉MySQL只显示日期介于今天和从今天起一个月之间的约会

您可以使用MySQL日期算法。我想你想要:

SELECT * 
FROM appt 
WHERE date >= current_date - interval 1 month
  AND date <  current_date + interval 1 day
ORDER BY date DESC, time DESC
选择*
来自appt
其中日期>=当前日期-间隔1个月
和日期<当前日期+间隔1天
订单按日期说明、时间说明

<代码> CurrestyDead是先前定义的函数或变量?@ USSR331093:这是一个MySQL内置函数,它返回当前日期(没有时间):考虑将日期和时间存储为单个实体,并查看SQL注入和准备和绑定的重要性。queries@Strawberry为什么这样更好?
SELECT * 
FROM appt 
WHERE date >= current_date - interval 1 month
  AND date <  current_date + interval 1 day
ORDER BY date DESC, time DESC