Javascript在HTML表中输出在线用户名
Javascript output online usernames in HTML table
我制作了一个服务器,如果人们登录,它会检查他们是否在线,并希望将这些信息放入html表中。
<?php
session_start();
include_once '../php'connect.php';
function removeRefresh(){
$query = connection()->prepare("UPDATE `online` SET `time` = `time`+1");
$query->execute();
$query = connection()->prepare("DELETE FROM `online` WHERE `time` > 5");
$query->execute();
}
function addOrRefresh($ID){
$query = connection()->prepare("SELECT COUNT('id') FROM `online` WHERE `ID` = :ID");
$query->bindParam(':ID', $ID);
$query->execute();
$count = $query->fetchColumn();
if($count == 0){
$query = connection()->prepare("INSERT INTO `online`(`ID`, `time`) VALUES(:ID, 0)");
$query->bindParam(':ID', $ID);
$query->execute();
}
else{
$query = connection()->prepare("UPDATE `online` SET `time` = 0 WHERE `ID` = :ID");
$query->bindParam(':ID', $ID);
$query->execute();
}
}
$action = filter_input(INPUT_GET, 'action');
if($action == 'heartbeat'){
removeRefresh();
$ID = $_GET['id'];
addOrRefresh($ID);
$query = connection()->prepare("SELECT u.username FROM `nusers` u INNER JOIN `online` o ON o.ID = u.ID");
$query->execute();
$onlineUsers = $query->fetchAll(PDO::FETCH_ASSOC);
$resultaat = "";
foreach($onlineUsers as $user){
$resultaat .= "<p>{$user['username']} <br></p>";
}
echo "$resultaat";
}
?>
你可以注册,当你登录大厅时,你会被添加到一个"在线"表格中,该表格每秒都会使用"心跳"功能进行检查。
请原谅我英语不好。
编辑:我有系统在工作。我只想更改"echo"$resultaat",使其将$resultaat放入表行中。在一个"}"之后添加不会起作用,我已经尝试过解决这个问题,不确定我是否在回想中尝试了所有的可能性。根据请求,我已经发布了整个文档。另一个javascript部分集成到另一个文档中;包含:
<?php
session_start();
$ID = $_SESSION['ID'];
if (isset($_POST['logout'])) {
session_destroy();
$query = connection()->prepare("DELETE FROM `online` WHERE `ID` = :ID");
$query->bindParam(':ID', $ID);
$query->execute();
}
?>
<html>
<head>
<title>Stratego</title>
<Link href="../layout/style.css" type="text/css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="./js/HeartBeat.js"></script>
<script>
$(document).ready(function () {
heartbeat.setSpelerId( <?php echo $ID; ?> );
heartbeat.polling();
});
</script>
</head>
<body>
<form method='post' name='logout' action="../setup/logout.php">
<input type='submit' name='loggout' value='Log me out'>
</form>
<a href="lobby1.php">Singleplayer</a>
<div id="online-list">
</div>
</body>
<?php echo "<script>
function heartbeat(){
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
console.log(xhttp.responseText);
document.getElementById('"online-list'").innerHTML = xhttp.responseText;
}
};
xhttp.open('"GET'", '"./wachtruimterInterface.php?action=heartbeat&id=" . $ID . "'", true);
console.log('keeping in touch ༼つ ◕_◕ ༽つ');
xhttp.send();
}
setInterval(heartbeat, 1000);
</script>"; ?>
</html>
控制台日志用于检查是否正在维护连接。人们使用他们的ID登录,没有密码。
现在的情况是这样的,有一个人在线;名为Luuk。http://www.filedropper.com/screenproof我的目标是让所有在线的人坐到一张桌子上。我试过
$resultaat .= "<tr><td>{$user['username']} <br></td></tr>";
}
echo "<table>$resultaat</table>";
刚才,似乎不起作用,有什么关于如何进步的提示吗?
我已经解决了这个问题;
$resultaat = "";
foreach($onlineUsers as $user){
$naam= $user['username']
$resultaat .= "<tr><td>$naam</td></tr>";
}
echo "<table border=1>$resultaat</table>";
相关文章:
- 如果在线检查期间发生电源故障,我们如何更新用户再次登录门户时的剩余时间
- 从Javascript运行PHP文件来检查在线用户:表示未登录的用户是
- 如何在我的网站上获得用户在线状态(实时)
- 在xmpp多聊天中,管理员角色只授予创建房间的在线用户成员资格
- 检查用户是否在线
- 如果服务器崩溃,如何跟踪用户的“在线”状态
- 在线投票应用程序.如何避免同一用户的重复投票
- 在MeteorJS中直接向在线用户发送消息
- SignalR用于跟踪在线用户和聊天
- 高级用户/员工在线活动跟踪
- 无法使用本地主机上的node.js向不在线的用户发送消息
- XEP-0133:管理员请求获取所有在线用户列表
- node . js,套接字.Io:检查用户是否在线或离线
- 套接字.IO是跟踪用户是否在线的最好方法
- Firebase -统计在线用户
- 使用QuickBlox JS SDK列出房间在线用户的数量
- 在Ruby on Rails 3应用程序中查看并与您网站上当前的在线用户交谈
- 获取在线用户脸书 API
- 自动刷新在线用户表而不刷新整个页面
- 使用Javascript与ejabberd一起获取在线用户列表