可能的问题可能过于广泛,但我还是要问。
因此,我已经对自己的PHP知识进行了聊天应用程序,但是我也可以使用它,但是由于我设置了一个间隔以显示我的消息,以显示我的第10秒钟,它窃取了很多带宽。所以我想知道...
- 每当我的数据库中添加新消息时,是否有一种方法可以设置Interval?
- 或者也许还有其他任何方式,有些人知道我应该解决这个问题?
这是我到目前为止提出的
<?php
include "connect.php";
$query = "SELECT * FROM messages ORDER BY id ASC";
$result = $con->query($query);
if($result){
while($row = $result->fetch_object())
{
echo '<div id = "hehe">';
echo '<div class = "userpic"><img src = "'.$row->userpic.'" class = "userpic"></div>';
echo "<ul id = 'rutor'>";
if (isset($row->displayname) && !empty($row->displayname)) {
echo '<li class = "userlada">'.$row->displayname. "</li>";
}
else{
echo '<li class = "userlada">'.$row->username. "</li>";
}
echo '<li class = "usertext">'.$row->message. "</li>";
echo "</ul>";
echo "</div>";
}
}
?>
我的间隔功能以查看消息
setInterval(function() {
$( ".chatMessages" ).load( "getMeddelanden.php" );
}, 10000);
每当我的数据库中添加新消息时,是否有一种方法可以设置Interval?
每当将新消息添加到数据库(服务器)时,您需要使用WebSocket
将数据推到客户端。
setInterval
所做的是民意调查,它反复调用服务器以查看是否添加了新消息,如果是的,则将其检索。
,或者也许还有其他任何方式,有些人知道我应该解决这个问题?
据我所知,使用WebSocket是最好的方法。您还可以使用一些技术来使您的工作更轻松,例如socket.io,pubnub&amp;mqtt。