我正在编写 ac# 应用程序。我使用 php 作为服务器端,使用 mysql 数据库来保存帐户数据。我可以通过 WebRequest 和 POST 方法访问我的 mysql 数据库。我通过登录更新帐户状态以防止其他人登录,但我不知道如何知道用户退出时间。我知道我可以为退出事件编写 c# 程序,但是如果用户意外退出怎么办。这似乎有点冒险,因为如果我以特殊条件退出,用户将被记录,甚至没有人可以登录,甚至最后一个用户,所以我认为最好设置一个过期时间服务器端的时间。我在一个时间范围内更新我的用户状态,但是当没有用户更新时,如何编程我的数据库来更改记录?我可以通过 php 来完成吗?SQL 查询吗?谢谢。
3 回答
慕容708150
TA贡献1831条经验 获得超4个赞
我认为您可以尝试使用数据库中的 TRIGGER 来跟踪空闲时间和从数据库注销用户。如果用户在屏幕上空闲,您可以在 UI 触发器中定义的时间间隔内更新数据库。
CREATE
[DEFINER = user]
TRIGGER trigger_name
trigger_time trigger_event
ON tbl_name FOR EACH ROW
[trigger_order]
trigger_body
trigger_time: { BEFORE | AFTER }
trigger_event: { INSERT | UPDATE | DELETE }
trigger_order: { FOLLOWS | PRECEDES } other_trigger_name
凤凰求蛊
TA贡献1825条经验 获得超4个赞
在php中你可以使用session来保存用户的状态。我建议根据您的问题设置活动会话的数量,这样如果有人尝试在其他地方登录,他们会收到错误,或者他们设法登录,其他活动用户会自动注销
富国沪深
TA贡献1790条经验 获得超9个赞
在 C# 中,您可以跟踪表单关闭事件或用户注销。因此您可以跟踪用户退出。考虑Activated
事件和/或LostFocus
事件,因为如果用户意外退出(就像电脑断电一样),您将无能为力。
- 3 回答
- 0 关注
- 137 浏览
添加回答
举报
0/150
提交
取消