我正在开发一个小的PHP MYSQL聊天应用程序。我需要每隔几秒刷新聊天窗口中的数据,而不重新加载整个页面。我知道我必须使用Javascript或Jquery来完成这个,但我真的不太了解它们。
以下是创建聊天窗口并从数据库中填充它的代码。
非常感谢,感谢您的帮助。
<textarea id="screen" name="screen" style="width:100%;height:300;resize:none">
<?php
$sql="SELECT * FROM `$tbl_5` WHERE advertid='$advertid' ORDER by id ASC";
$result = mysqli_query($dbconn, $sql);
while ($row2=mysqli_fetch_row($result))
{
echo $row2[5]."\n";
}
?>
</textarea>
编辑:我尝试使用AJAX
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
sendRequest();
function sendRequest(){
$.ajax({
type: 'POST',
url: '/chatrefresh.php',
data: parameters,
success: function(response){
$('#chatwindow').html(response);
},
error: function(response){
alert(response);
},
complete: function() {
setInterval(sendRequest, 5000);
}
});
};
});
</script>
<table id="chatwindow" name="chatwindow"><tr><td></td></tr></table>
Chatrefresh.php
<textarea id="screen" name="screen" style="width:100%;height:300;resize:none">
<?php
include_once('session.php');
include('config.php');
$advertid=$_SESSION['advertid'];
$sql="SELECT * FROM `$tbl_5` WHERE advertid='$advertid' ORDER by id ASC";
$result = mysqli_query($dbconn, $sql);
while ($row=mysqli_fetch_row($result))
{
echo $row[5]."\n";
}
?>
</textarea>