这可能吗?我用它来将日期插入名为“date”的字段中:
$date=date("m/d/y");
$sql="INSERT INTO pool (date) VALUES('$date' )";
$result=mysql_query($sql);
我用这句话来获取一周前的日期:
$variable = date('d-m-y', strtotime('-1 week'));
那么我如何选择上周添加的任何行?
答案 0 :(得分:3)
不应将日期存储为m/d/y
,而应将其存储为Y-m-d:
$date=date("Y-m-d");
$sql="INSERT INTO pool (date) VALUES('$date' )";
在数据库中,您的日期将显示为2011-04-09
。
这种格式更容易使用:字母比较将起作用。
这意味着搜索超过特定日期的行将变为如下所示:
$variable = date('Y-m-d', strtotime('-1 week'));
$query = "select * from pool where date < '$variable'";
另请注意,您可以使用DATE
列来使用date and time functions列,而不是使用数据库中varchar(或等效值)的date
字段。在MySQL中。
答案 1 :(得分:1)
如果日期字段是正确的日期类型,则可以执行&lt;或者&gt;在你的SQL查询中。例如 -
SELECT * FROM table WHERE date > '$date'
如果您想要从1周前到现在的所有内容,您可以执行上述操作或
SELECT * FROM table WHERE date BETWEEN '$date' AND NOW()