chat.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function (){
var message = "";
setInterval(function(){
getdata(); x
},200);
function getdata() {
$.get("getdata.php",function (data) {
//3个参数,(地址,内容,返回值),这里只有地址和返回值
var count = 0;
for (a in data){
count++;
}
var show = 0;
for (a in data){
if ( show >= count-15 ){
message += "<p>"+ data[a].username + ":" + data[a].message+"</p>";
$("#show_message").html(message);
}
show++;
}
message = "";
});
}
$("#ckq").keydown(function(e){ //按下键盘触发函数
if(e.keyCode==13){ //如果按下的是回车
var user = $('input:radio:checked').val();
$.ajax({
url: "chat.php", //获取数据的地址
type: "post", //方式
async: false, //同步/异步
data: {"in":$("#ckq").val(),"username":user}
});
getdata();
$("#ckq").val("");//返回或设置被选函数
}
});
})
</script>
<style type="text/css">
</style>
</head>
<body>
<p id="message">即时通讯系统</p>
<p>西电码农与老板的对话:</p>
选择身份:<input type="radio" name="sex" value="西电码农" checked>西电码农
<input type="radio" name="sex" value="老板">老板
<br>
<div id="show_message">
</div>
<p>
<input type="text" id="ckq" name="in">
</p>
</body>
</html>
connection.php
<?php
session_start();
error_reporting(0); //。。加这个就不显示提示
$servername = "localhost";
$username = "root";
$password = "...";
$con = mysql_connect($servername,$username,$password);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_query("set names 'utf8'");
mysql_select_db("TXXT", $con);
$sql = "CREATE TABLE IF NOT EXISTS `mymessage` (
messageID int NOT NULL AUTO_INCREMENT,
username char(30) NOT NULL,
message char(30) NOT NULL,
PRIMARY KEY (messageID)
) ENGINE=InnoDB DEFAULT CHARSET=gbk; " ;
mysql_query($sql);
?>
getdata.php<?php
include ("connection.php");
header('content-type:appl ication/json;charset=utf8');
$result = mysql_query("select message,username from mymessage");
$results = array();
while ($row = mysql_fetch_assoc($result)) { //mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组,返回根据从结果集取得的行生成的关联数组!,如果没有更多行,则返回 false。
$results[] = $row;
}
$jsonResult = json_encode($results);
echo $jsonResult;
mysql_close();
?>
chat.php
<?php
include ("connection.php");
$sql = "INSERT INTO mymessage (message,username) VALUES('$_POST[in]','$_POST[username]')";
mysql_query($sql);
?>