php+ajax实现在线刷新,即时通讯,无需mysql数据库!


也不多,就4个文件。ajax.html – 显示实时刷新的内容页面。
chat.php – 处理数据。
data.dat – 存储文本数据。
update.php – 更新/插入数据。

php+ajax实现在线刷新,即时通讯,无需mysql数据库!

首先呢,要有ajax.html

<html>
<head>
<meta charset="utf-8">  
<script type="text/javascript">  
function loadXMLDoc()//ajax发送请求并显示  
{  
var xmlhttp;  
if (window.XMLHttpRequest)  
  {// code for IE7+, Firefox, Chrome, Opera, Safari  
  xmlhttp=new XMLHttpRequest();  
  }  
else  
  {// code for IE6, IE5  
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");  
  }  
xmlhttp.onreadystatechange=function()  
  {  
  if (xmlhttp.readyState==4 && xmlhttp.status==200)  
    {  
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;  
    }  
  }  
xmlhttp.open("POST","chat.php",true);  
xmlhttp.send();  
setTimeout("loadXMLDoc()",1000);//递归调用  
}  
loadXMLDoc();//先执行一次  
</script>  
</head>  
<body>  

<div id="myDiv"></div>  
</body>  
</html>

然后通过chat.php和data.dat关联起来。data.dat是一个空文件,你只需要用记事本,新建一个data.dat,用来存放表单提交过去的数据,也就是说,data其实就是一个数据库。下面是chat.php代码

<?php   
echo file_get_contents("data.dat");  
?>

然后通过php更新数据,刷新data.dat的数据,然后chat.php就会把数据提交给ajax处理,实时刷新在ajax.htm页面了,下面是update.php

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>发送</title>
</head>
<body>
<form action="update.php" method="post">
        <input type="text" name="text">
</form>

<?php
header("Content-type:text/html;charset=utf-8");
error_reporting(E_ALL^E_NOTICE^E_WARNING);
$file_name = "data.dat";
// 绝对路径: homedata.dat

$file_pointer = fopen($file_name, "w");
// "w"是一种模式,详见后面

fwrite($file_pointer, "$_POST[text]");
// 不把文件剪切成0字节, 把数据追加到文件最后


fclose($file_pointer);
// 结束

print "数据成功写入文件";

?>
</body>
</html>

使用方法:
1、打开ajax.html
2、打开update.php输入数据,提交后就可以看到ajax.html页面实时刷新了!


发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>