将这个项目提炼成最简单的术语;
- 用户点击一个按钮,一个带有 NOW() 时间戳的记录被创建。
- NOW() 当然等于服务器上创建记录的时间。
- 我需要根据他们的时区向他们展示统计数据,而不是我的。
在 MySql 中与时区偏移对齐的最佳方法是什么?是否有专门用于处理偏移量的特定字段格式?
我需要按照以下方式运行:
SELECT DATE_FORMAT(b_stamp, '%W') AS week_day, count(*) AS b_total, b_stamp
FROM table
WHERE
(b_stamp >= DATE_SUB(NOW(), INTERVAL 7 DAY))
AND
(user_id = '$user_id') GROUP BY week_day ORDER BY b_stamp DESC
我宁愿不问用户他们在哪个时区,我认为 JS 是从浏览器中提取这些数据的唯一方法。也许如果他们在移动设备上,而且这不是一个基于网络的应用程序,我可以得到它,但这可能不是这个方向。
我正在考虑最好的方法可能是确定它们的偏移量,并将变量设置为“server_time”+/- their_offset。这使得它看起来好像服务器位于不同的位置。我相信这将是最好的,因为我不需要向代码中添加额外的 +/- 逻辑,使其变得混乱并使其变得丑陋。
另一方面,这会将带有时间戳的数据放入数据库中。
建议?