600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > ThinkPHP结合ajax Mysql实现的客户端通信功能代码示例【PHP】

ThinkPHP结合ajax Mysql实现的客户端通信功能代码示例【PHP】

时间:2023-09-26 20:55:05

相关推荐

ThinkPHP结合ajax Mysql实现的客户端通信功能代码示例【PHP】

后端开发|php教程

ThinkPHP,ajax,Mysql,客户端通信

后端开发-php教程

该实例通过ThinkPHP结合Ajax与mysql实现了客户端的通信功能,具体如下:

龙骑士ol源码,ubuntu硬盘需要密码,tomcat体系结构描述,爬虫大boss,太仓php求职,云阳一站式seo推广效果lzw

1、使用js的ajax局部刷新功能,每次刷新将数据库中读取出的新记录插入到页面的显示区域,代码如下:

防7881交易平台源码,装ubuntu分区没了,tomcat端口号哪里改,twitter爬虫api,阿里云linux如何部署php,整站seo推荐lzw

window.onload =setInterval(showWords1000);//加载完成之后开始执行刷新功能

function showWords()//刷新时被调用函数,实现ajax请求 {xmlHttp=GetXmlHttpObject();//从自定义的函数中获取请求对象。 if (xmlHttp==null) {alert ("Browser does not support HTTP Request")return; } var url="index.php?g=Ksks&m=Comments&a=refresh";//要请求的路径使用shuipfcms框架,所以g是分组,m是action控制器,a是模板 url=url+"&data_id="+$("#data_id").val();//接上,data_id传的参数,用于查询数据库的id url=url+"&lasttime="+$("i").last().siblings(input).val();//lasttime是页面显示数据的最后一个记录的时间戳,查找时根据大于这个时间戳的条件查找 xmlHttp.onreadystatechange=stateChanged;//响应状态改变时调用的函数 xmlHttp.open("GET",url,true);//使用get方法提交 xmlHttp.send();//上面传参之后,这句可要可不要 } function stateChanged() //实现向页面插入数据功能 { var str ="";if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {eval("var arrs="+xmlHttp.responseText);//获取由action响应输出的数据,因为数据室php数组格式,需用eval或json转化成js数组格式var chdiv=$("#conversation_history");//通信聊天记录框for(var j=0;j");//定义页面当中记录框的html格式代码 var i=$("");//i标签i为thinkphp定义的直接将时间输出到input隐藏并且存储得到数据里面的聊天发送时间 var p=$(""); p.html(arrs[j].content);//聊天内容 p.append(i); var h3value=arrs[j].name;//发送的作者 obj.find("h3").html(h3value+":"); if(h3value=="主持人") {obj.find("h3").addClass("presenter");}//主持人会特别显示 obj.find("td:last").append(p); chdiv.append(obj);//追加到table里面}chdiv.parent().scrollTop(chdiv.parent()[0].scrollHeight+0);//滚动到底部 } }

function GetXmlHttpObject()//定义ajax请求对象 { var xmlHttp=null; try {// Firefox, Opera 8.0+, SafarixmlHttp=new XMLHttpRequest(); } catch (e) {//Internet Explorertry{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}catch (e){xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");} } return xmlHttp; }

2、action控制器,代码如下:

手机装机联盟源码,vscode提示背景色补全,博通ubuntu,tomcat域名发布web,菜地杀爬虫,国内php高手,仓山区正规seo服务电话lzw

function refresh(){ $data_id = I(get.data_id);//获得嘉宾id $lasttime = I(get.lasttime); //print_r(date("Y-m-d H:i:s",$lasttime)); if(!$data_id) $this->error("该访谈不存在!"); $data = M("ksks_words_memoir");//print_r(date(Y-m-d H:i:s,$lasttime)); if(!$data) $this->error("初始化数据失败!"); //$words = $data->where(array(dataid => $data_id))->order( ime asc)->select(); //print_r($data->where(array( ime => $lasttime))->select()); $where[ ime] = array(gt,$lasttime); $count = $data->where($where)->count(); //print_r(date("Y-m-d H:i:s",$lasttime)); $words = $data->where($where)->select(); $datas = array();//要返回的数组 $i = 0; foreach($words as $word) { $datas[$i][ ame] = $word[ ame]; $datas[$i][content] = $word[content]; $datas[$i][ imes] = date(Y-m-d H:i:s,$word[ ime]); $lasttime = $word[ ime]; $i = $i+1; } setCookie(lasttime,$lasttime); $datas = json_encode($datas); //$this->cache(); echo $datas; }

3、聊天页面,代码如下:

<h3>{$vo.name}:

{$vo.content}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。