我试图检索已插入我的MYSQL表的所有将来日期的列表。
示例:我插入了值8-16-14、8-27-16、8-17-17。问题是下面的代码返回所有值,而不仅仅是将来的值。
任何想法为什么这不起作用?
public function getUpcomingDate($id) {
$date = date('m-d-y');
$stmt = $this->conn->prepare("SELECT * FROM roles WHERE id = ? AND item_date > '$date'");
$stmt->bind_param("i", $id);
$stmt->execute();
$user = $stmt->get_result();
$row_count = $user->num_rows;
while ($row = $user->fetch_assoc()) {
$data[] = $row;
}
$stmt->close();
if($data) {
return $data;
} else {
return false;
}
}
最佳答案
您无法检查日期(以字符串形式保存)是否大于另一个日期(以字符串形式保存)。
这就是为什么您应该将日期作为unix时间戳存储在数据库中,然后将$ date与数据库中的“ item_date”进行比较。
在stackoverflow上检查此strtotime示例-> here
关于php - PHP-从服务器检索 future 日期的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39003126/