概述php实现简单聊天功能
PHP实现简单聊天功能
1、创建聊天消息表,其表的字段有消息内容,发送时间和发送者的名称;
sql:
CREATE table `guanhui`.`message` ( `ID` INT(10) NOT NulL auto_INCREMENT COMMENT '消息ID' , `content` VARCHAR(255) NOT NulL COMMENT '消息内容' , `sender` VARCHAR(60) NOT NulL COMMENT '发送者' , `send_time` INT(10) NOT NulL COMMENT '发送时间' , PRIMARY KEY (`ID`) ) ENGINE = MyISAM;
2、创建PHP文件将聊天消息查询出来,并以Json格式输出;
$con = MysqL_connect("localhost","","");if (!$con) { dIE('Could not connect: ' . MysqL_error());}MysqL_select_db("chat", $con);MysqL_query("set names 'utf8'"); $sql = "SELECT * FROM `message`";$result = MysqL_query($sql);if(isset($result)){ Json_encode(array( 'code' => 0, 'msg' => 'OK', 'data' => MysqL_fetch_array($result, MysqL_ASSOC) ))} else { Json_encode(array( 'code' => 0, 'msg' => '聊天信息为空!' ))}
3、在前端使用AJAX轮询请求PHP文件,并将消息展示出来。
setInterval(function(){ $.get('/get_message_List.PHP', function(data){ $(data).each(function(value, item){ $('#message_List').append('来自:' + data.sender + '的消息:' + data.message + '发送时间:', data.send_time); }); });}, 600);
4、创建send_message.PHP用来接收发送的消息,并将数据储存到数据库。
$send_time = date('Y-m-d H:i:s',time());;$send = $_POST['sender'];$content = $_POST['content'];$con = MysqL_connect("localhost","","");if (!$con) { dIE('Could not connect: ' . MysqL_error());}MysqL_select_db("ing", $con);MysqL_query("set names 'utf8'");$insert="INSERT INTO `chat` (`ID` ,`sender` ,`content` ,`send_time`) VALUES (NulL , '$sender', '$content', '$send_time')";$result = MysqL_query($insert);
5、在前端获取要发送的消息,并请求send_message.PHP。
function sendcontent() { 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("input").INNERHTML=""; } } xmlhttp.open("POST","/send_message.PHP",true); var f=document.chat; var content = f.content.value; var sender = f.sender.value; //发送请求 //这里使用Post方法传递参数; //将要构造的参数连接起来,接收的时候:$_POST['send']; var post_str= "content="+ content+"&sender="+sender; //使用post的时候必须在发送请求之前加上下面这句 xmlhttp.setRequestheader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send(post_str); }
总结
以上是内存溢出为你收集整理的php实现简单聊天功能全部内容,希望文章能够帮你解决php实现简单聊天功能所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
© 版权声明
THE END
请登录后查看评论内容