2015-12-02 72 views
0

我的情景:导出数据逻辑

我有一个关于导出数据的问题。我有一个PHP脚本运行一个复杂的查询,需要一些时间来返回数据。

当我得到我呈现给用户的数据并且他们有能力导出,如果他们想要。

我的逻辑

为了避免重新运行查询,当用户导出我设置由查询,如果出口用户点击脚本返回的数据会话变量构建Excel中的数据集的数据在会话变量中。

我的问题

因为如果用户运行不同的报表全部由会话VAR数据保持将只有最后一个,他们跑的数据是在一个会话变量存储。

在相同的报告中钻取这种情况。

我的问题

1-其他开发商如何处理这种情况?

2-他们只是重新运行查询一个用户点击导出数据? (无需花费两倍的时间)

3-为每个报告设置不同的会话变量? (如果你有100个用户和20份报告,那么你将有2000会话变量的情况下,用户运行的所有报告)

谢谢您的意见。

+0

也许最终你会在你的数据库有时间戳和唯一标识的查询创建用户会话表。最好和最简单的方法来控制用户活动并根据会话时间开始确定超时。 – cpugourou

回答