按日期过滤搜索结果时,时区应该是日期的标准吗?

时间:2011-06-20 15:39:49

标签: datetime localization usability

我们有一个网站,其中包含大量由管理员创建日期和时间的活动。管理员为输入​​的每个日期时间选择一个时区,它们以UTC时间存储。我们正在努力支持全球受众,并在日期方面完全本地化。

我们有一个搜索页面,允许将日期作为搜索条件输入。

所以用户可以说,向我展示“7月1日至2011年12月1日上午”和“2011年7月10日晚上11:59”之间的所有活动。

我正在试图找出最佳方法来确定考虑日期过滤条件的时区。

  1. 强制最终用户在创建日期过滤器时选择时区。这很麻烦,我们的设计师也在推迟。这是我更喜欢的。
  2. 假设输入的日期位于用户“首选”时区,该时区是在登录时设置的。
  3. 以当地时间存储时间,而不转换为UTC。这样最终用户就可以在管理员创建的日期中进行搜索。我讨厌这个想法,我需要帮助解释为什么这是坏事。
  4. 请帮忙!

1 个答案:

答案 0 :(得分:1)

第二个选项可以解决您的问题。它可能是最好的。

可能您可以从网络浏览器(使用JavaScript)获得当前时区偏移,但问题是,某些时区当前具有相同的偏移但夏令时在不同日期切换,因此搜索结果将不准确。通过让用户选择他/她喜欢的时区并将该信息存储在配置文件中,您可以始终显示正确的日期和时间,以及使用此信息进行搜索。但是,我会在搜索框附近添加一个信息,以便最终用户知道它所指的时区(使用JavaScript很明显:当前用户可能忘记了配置文件)。
BTW。时区信息最好显示为“UTC + 02:00(华沙,萨格勒布,斯科普里)”而不是“中欧时间”...

至于其他选择:
1.点击太多了。除了“不要让我思考,我想在我当地的时区拥有它,是不是很明显?”。 3.当地时间不能相互比较。您很快会得到两个不同的日期,指的是相同的时间点(至少在数字方面)。真的很糟糕。