1
我正在构建一个任务列表。我的数据库中有两张桌子。模板和任务 的模板结构,像这样日期计数PHP
id, task_name, function, text, days_to_action
1, Touch Base, call, Call to touch base, 7
任务表的结构是这样的:
id, task_name, function, text, due_date
1, Touch Base, call, Call to touch base, 02:06:2016
到期日与该公式($ set_days被抓days_to_action)计算:
$dueDate = date('d:m:Y', strtotime('+'.$set_days.' days'));
正如你所看到的我正在使用澳大利亚日期格式。要做到我在我的所有网页的顶部包含这个正确的事情:
date_default_timezone_set('Australia/Brisbane');
在我的网页我想显示当天或逾期是由于任务。
$today = date('d:m:Y');
$task_list = $mysqli->query("SELECT * FROM task WHERE id='$linkid' && time_due <= '$today' ORDER BY datetime DESC");
我发现这个bug是当天翻转到一个新的月份(如上面的例子)我的代码认为2016年2月6日(日/月/年)是28之前出现的日期/ 05/2016。
数据库只能使用美式格式吗?有没有选择切换到澳大利亚?有没有我失踪的一步? B
更新列是'DATE'类型,你可以依靠MySQL为你做这些计算。 – hjpotter92
@ hjpotter92我已经更新了栏目。它消灭了我的输入,因为我猜他们是无效的。我会尝试修复提交内容,看看是否有效。谢谢。 – Bjaeg