龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

PHP简单的在线聊天

时间:2014-07-22 14:49来源: 作者: 点击:
分享到:
一个很简单的在线聊天!寻找会网页设计的交朋友!
一个很简单的在线聊天!寻找会网页设计的交朋友!
//发送消息
function sendMsg()
{
	var msg = $("#msg").val();
	$("#msg").val("");
	$.post("msg.php",{"type":"send","id":$("#id").val(),"tid":$("#tid").val(),"msg":msg},function(msgid){				
		$("#msglist ul").append('<li>me:'+msg+'</li>');
		var scrollTop = $("#msglist ul").height();		
        $("#msglist").scrollTop(scrollTop);
		$("#msgid").val(msgid);
		if(count>5)
		{
			clearTimeout(interval);  //关闭慢的定时器
			interval = setInterval(getMsg, speedTime); 
			count = 0;
		}
	});
}
//获取消息
function getMsg()
{
	var msgid = $("#msgid").val();
	$.post("msg.php",{"type":"get","id":$("#id").val(),"tid":$("#tid").val(),"msgid":msgid},function(msg){		
		if(msg!="empty")
		{			
			var data = eval("("+msg+")");
			for(var i=0;i<data.length;i++)
			{
				$("#msgid").val(parseInt(data[i].id)+1);
				$("#msglist ul").append('<li>re:'+data[i].msg+'</li>');
			}			
			var scrollTop = $("#msglist ul").height();		
			$("#msglist").scrollTop(scrollTop);
			if(count>maxCount)
			{
				clearTimeout(interval);  //关闭慢的定时器
				interval = setInterval(getMsg, speedTime); 
				count = 0;
			}
		}else
		{
			count ++;
			if(count>maxCount)
			{
				clearTimeout(interval);  //关闭快速定时器
				interval = setInterval(getMsg, slowTime); //创建一个新的定时器
			}
		}
	});
}
//设置时间
var speedTime = 1000;
var slowTime = 20000;
//设置次数
var count = 0;
var maxCount = 10;
//创建一个定时器
var interval;
$(function(){
	$("#send").click(function(){
		sendMsg();
	});	
	$("#clear").click(function(){
		$("#msglist ul").html("");
	});	
	
	interval = setInterval(getMsg, speedTime); 
	//clearTimeout(interval);  //关闭定时器  
});

2. [代码][PHP]代码     跳至 [1] [2] [全屏预览]

$type= $_POST['type'];
if($type=="send")
{
	$msg = $_POST['msg'];
	$uid = $_POST['id'];
	$tuid = $_POST['tid'];
	$sql = "INSERT INTO web_msg(uid,msg,tuid,status) VALUES('".$uid."','".$mysql->escape($msg)."','".$tuid."',0)";
	$mysql->query($sql);
	$msgid = $mysql->getLastId();
	echo $msgid;
	exit;
}
else if($type=="get")
{
	$uid = $_POST['id'];//用户标识
	$tuid = $_POST['tid'];//聊天对象标识
	$msgid = $_POST['msgid'];
	$sql = "SELECT * FROM web_msg WHERE STATUS=0 AND tuid='".$uid."' AND uid = '".$tuid."' ORDER BY id ASC";	
	$msgList = $mysql->query($sql)->rows;
	$mysql->query("UPDATE web_msg SET STATUS=1 WHERE tuid='".$uid."' AND uid = '".$tuid."'");
	if(empty($msgList))
	{
		echo "empty";exit;
	}else
	{
		echo json_encode($msgList);
		exit;
	}
	exit;
}
精彩图集

赞助商链接