允许访客和网站成员查看谁在线/登录使用AJAX,PHP / PDO,CSS,HTML
allowing guests and members of site to see who is online/logged in using ajax, php/pdo, css, html
我在网上搜索了所有内容,但找不到解决方案。 我没有 AJAX 的经验,但知道执行此功能需要它,因为我相信它比仅使用纯 javascript 更好。
我有一个在我的网站上注册的成员列表,列表位于一个单独的页面上 ->每个成员的列表中,要么有一个绿点(表示成员是否在线),要么用户离线(灰点显示)。 我目前仅使用css和html将其作为占位符。 <online />
和<offline />
几乎就像<span>
标签一样位于<h2>
标签内。 有没有办法自动更新它以实时显示谁实际登录/注销,而无需使用 NodeJS 和/或 SocketIO?
网页如下所示:
<h2>Billy <online title="Online" /></h2>
如果在线(已登录),<online title="Online" />
将在其姓名旁边显示绿点。 如果他们没有登录,html 应如下所示:
<h2>Billy <offline title="Offline" /></h2>
如果脱机(已注销),<offline title="Offline" />
将在其名称旁边显示灰色点。
就像我也提到的那样,我没有 AJAX 的经验,但我很确定我需要仅针对本节执行自动更新/刷新时间 - 所以不是整个页面......而且我对PHP有点熟悉,所以我会使用SESSION_[ID]
进行查询,以查看/收集有关谁登录和谁未登录的信息。
如果有人能帮忙,我将不胜感激,我已经在寻找了几天如何实现这一目标,但找不到任何东西......
我目前拥有的演示:http://jsfiddle.net/tZpk6/
虽然我并不全是 JS 的花哨,但这样做的基础知识是简单地使用某人登录或执行操作的最新时间更新数据库中的表——然后当你显示有关用户的信息时,您只需查询该表 - 任何在过去五到十分钟内有某种活动的人都被视为"在线" - 和其他......其实不然。
您的脚本不能真正使用会话 ID - 因为它们是唯一的,并且仅对运行代码的用户可见。我的意思是,尽管您的网站上可能有十几个用户,所有这些用户都在使用会话变量,但他们无法相互交互。每个用户(我的意思是运行的代码)只能访问自己的会话变量。如果你想让他们能够看到对方,它必须通过一个中间设备来完成,比如数据库,或者一个文件——或者一个持续运行的实际应用程序——用Java或C#等编写,它总是在运行,并从PHP代码传递数据。
所以基本上,虽然你可以应用 AJAX 来不断检查更新,但后台的数据几乎总是通过一个简单的表格完成的,你可以在页面重新加载时实现,或者变得更漂亮一点,并通过页面内运行的脚本定期检查它。
- Jquery Modal表单登录与AJAX-ASP经典上的IE 9
- 我尝试在登录脚本中使用ajax,但页面不会重定向
- Ajax登录技术(后端php)
- (Ajax)在不重新加载内容的情况下登录页面url
- Wordpress ajax使用多站点登录
- 无法使用ajax成功登录网页
- Laravel:在 ajax 请求的会话过期后重定向到登录
- Laravel使用AJAX进行登录验证
- ajax请求在Joomla 3.3中登录
- 使用Ajax检查登录表单
- 使用Ajax登录网站
- FOSUserBundle AJAX登录Symfony2(路由)
- 使用AJAX提交登录表单并获得响应
- 无法使用html5、AJAX和PHP登录
- ajax登录表单,重新加载到表单而不是页面上
- Ajax在登录表单中显示错误,而不重新加载页面
- 简单的PHP到Ajax'未登录'错误-如何
- 通过 JS 和 ajax 验证用户登录
- 防止在用户未登录时进行 AJAX 调用
- 如何在 ajax 调用中保护我的登录凭据