本文实例为大家分享了php匿名聊天室的具体实现代码,供大家参考,具体内容如下
1. index.html
<html> <head> <title>聊天室</title> <meta charset="utf-8"/> <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> <link href="./css/style.css" rel="stylesheet"/> <script> var maxid = 0; function showmessage() { //创建ajax对象 var xhr = new XMLHttpRequest(); //监听 xhr.onreadystatechange = function () { if (xhr.readyState === 4) { eval("var info=" + xhr.responseText); var text = ""; for (var i = 0; i < info.length; i++) { text += "<div class='alert alert-success'>" + "<span class='name'>" + info[i].send + ":</span>" + "<span class='message'>" + info[i].content + "</span>" + "<span>(" + info[i].time + ")</span>" + "</div>"; maxid = info[i].id; } var old = document.getElementById("msg").innerHTML; document.getElementById("msg").innerHTML = old + text; document.getElementById("msg").scrollTop = document.getElementById("msg").scrollHeight; } }; //初始化 xhr.open("get", "./action.php?maxid=" + maxid); //发送 xhr.send(); } $(document).ready( function () { showmessage() self.setInterval("showmessage()", 2000); } ); function send() { var postData ="content="+document.getElementById('content').value; var xhr = new XMLHttpRequest(); xhr.open("POST", "./add.php", true); //一定要写头信息不然服务器接收不到 xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhr.onreadystatechange = function () { var XMLHttpReq = xhr; if (XMLHttpReq.readyState == 4) { if (XMLHttpReq.status == 200) { document.getElementById('content').value=""; } } }; xhr.send(postData); } </script> </head> <body> <div class="panel panel-default" id="main"> <!--聊天室名字--> <div class="panel-heading"> <h3 class="panel-title"> 匿名者聊天室 </h3> </div> <!--聊天室名字--> <!--聊天室消息框--> <div class="panel-body "> <div class="well no-bottom "> <!-- 消息框样式--> <!-- <div class="alert alert-success">成功!很好地完成了提交。</div> <div class="alert alert-info">信息!请注意这个信息。</div> <div class="alert alert-warning">警告!请不要提交。</div> <div class="alert alert-danger">错误!请进行一些更改。</div> --> <div id="msg" class="showmessage"> </div> <!--聊天室消息框--> <div class="well" > <form role="form"> <div class="form-group"> <label for="name">发送消息</label> <textarea class="form-control" id="content" name="content" style="resize: none;font-family: Microsoft YaHei;" rows="3" > </textarea> </div> <div style="text-align: right"> <button type="button" class="btn btn-primary" onclick="send()"> <span class="glyphicon glyphicon-envelope"></span> 发送 </button> </div> </form> </div> <!--聊天室发送框--> </div> </div> </div> </body> </html>
2. action.php
<?php $link = mysqli_connect('localhost', 'root', '123', 'test'); mysqli_query($link, 'set names utf8'); $info= array(); header("Content-type: text/html; charset=utf-8"); $id=$_GET['maxid']; $data = mysqli_query($link, "select * from talk where id>$id"); while ($array = mysqli_fetch_assoc($data)) { $info[] = $array; }; echo json_encode($info);
3. chat.sql
DROP TABLE IF EXISTS `talk`; CREATE TABLE `talk` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id', `send` varchar(10) CHARACTER SET utf8 DEFAULT NULL COMMENT '发送者昵称', `ip` varchar(12) CHARACTER SET utf8 DEFAULT NULL, `content` varchar(500) CHARACTER SET utf8 DEFAULT NULL, `time` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
4. add.php
<?php /** * @功能 将表单插入数据库 */ $content=$_POST['content']; print_r($_POST); $time= date("Y-m-d H:i:s", time(0)); $link = mysqli_connect('localhost', 'root', '123', 'test'); mysqli_query($link, 'set names utf8'); $ip = $_SERVER["REMOTE_ADDR"]; $sql="INSERT INTO talk VALUES(NULL,'匿名者','$ip','$content','$time')"; $data = mysqli_query($link,$sql); echo "$content"; if($data) echo "1"; else echo "0";
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍php socket实现的聊天室代码分享,包括了php socket实现的聊天室代码分享的使用技巧和注意事项,需要的朋友参考一下
本文向大家介绍php实现简易聊天室应用代码,包括了php实现简易聊天室应用代码的使用技巧和注意事项,需要的朋友参考一下 核心逻辑 在定义应用程序的核心功能之前,先来看一看聊天应用程序的基本外观,如以下截图所示: 通过聊天窗口底部的输入框输入聊天文本。点击Send按钮,就开始执行函数set_chat_msg。这是一个基于Ajax的函数,因此无需刷新页面就可以将聊天文本发送到服务器。程序在服务器中执行
本文向大家介绍iOS实现搭建聊天页面的实例代码,包括了iOS实现搭建聊天页面的实例代码的使用技巧和注意事项,需要的朋友参考一下 由于工作需要,需要用到ios聊天页面,在网上搜了半天没有想要的,果断自己写一个,发个笔记 功能分析,模仿QQ聊天页面 输入框失去第一响应的情况: 1:点击页面 2:下滑页面 输入框成为第一响应的情况: 1:开始输入 2:上滑页面最底部 控制器 输入框 UITableVie
本文向大家介绍nw.js实现类似微信的聊天软件,包括了nw.js实现类似微信的聊天软件的使用技巧和注意事项,需要的朋友参考一下 nw.js实现类似微信的聊天软件 公司 qq被屏蔽,微信被屏蔽,怎么与外边通讯,你懂的。当然,也适合公司自己内部架设服务器,通讯。 项目地址: free chat 截图: 以上就是给大家分享的这个freechat的全部内容了,小伙伴们可以自由扩展哦,你懂得~
本文向大家介绍php+webSoket实现聊天室示例代码(附源码),包括了php+webSoket实现聊天室示例代码(附源码)的使用技巧和注意事项,需要的朋友参考一下 最近在公司利用直播间搭建一个图文直播间时正好要用到chatsever,研究了一下html5的websocket 实现了双向通信,根据前人的经验折腾了几天弄了个聊天室,实现了发送图片,发送QQ表情,群聊私聊等功能,特地分享给各位新手参
问题内容: 如何用PHP实现真正的快速网络聊天? 有没有人想知道为什么Facebook聊天真的这么快?即使在没有WebSocket的IE中也是如此。 唯一的方法不是在JS中设置setInterval来检查新消息吗?但我感觉(Facebook聊天框)就像有即时反应。 如何用PHP实现如此伟大的事情? 问题答案: 您所描述的即时聊天通常是由一个名为“长轮询”的东西,或来达到的,如果我们谈论的AJAX,