PHP编程:PHP+jquery+ajax实现即时聊天功能实例
发布时间:2020-12-13 02:17:22 所属栏目:PHP教程 来源:网络整理
导读:《PHP+jquery+ajax实现即时聊天功能实例》要点: 本文介绍了PHP+jquery+ajax实现即时聊天功能实例,希望对您有用。如果有疑问,可以联系我们。 PHP教程 本篇章节讲解PHP+jquery+ajax实现即时聊天功能的办法.供大家参考研究.具体如下: PHP教程 这是
《PHP+jquery+ajax实现即时聊天功能实例》要点: PHP教程本篇章节讲解PHP+jquery+ajax实现即时聊天功能的办法.分享给大家供大家参考.具体如下: PHP教程这是一个简单的利用jquery与php做的一个聊天室的源码,我们这里定时利用ajax读取数据库并进行刷新了,下面直接参上源码,实例代码如下: PHP教程index.html页面如下:
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script src="js/jquery-1.9.1.min.js"></script> <script> var chat = { ?init:function(){ ? chat.first(); ? $('#chat_btn').unbind('click').click(function(){ ?? chat.send(); ? }); ? $('#my_chat').keyup(function(){ ?? if(event.keyCode == 13){ ??? chat.send(); ?? } ? }); ?}, ?first:function(){ ? $.getJSON('data.php',{ ?? action:'first', ?? type:'l' ? },function(data){ ?? chat.btn_status._true(); ?? $('#mwebtime').html(data.time); ?? $('#chat textarea').val(data.chat); ?? $('#chat textarea').stop(true,true).animate({scrollTop:9999},1); ?? chat.socket(); ? }); ?}, ?send:function(){ ? chat.btn_status._false(); ? $.getJSON('send.php',{ ?? txt:$('#my_chat').val(),function(data){ ?? if(data.status==200){ ??? chat.btn_status._false(); ??? $('#my_chat').val(''); ??? setTimeout(function(){ ???? chat.btn_status._true(); ??? },2000); ?? } ? }); ?}, ?socket:function(){ ? $.getJSON('data.php',{ ?? action:'while',function(data){ ?? $('#mwebtime').html(data.time); ?? $('#chat textarea').val(data.chat); ?? $('#chat textarea').stop(true,1);? ?? chat.socket(); ? }); ?}, ?btn_status:{ ? _false:function(){ ?? $('#chat_btn').html('等待').attr('disabled',true); ? }, ? _true:function(){ ?? $('#chat_btn').html('发言').attr('disabled',false); ? } ?} } chat.init(); </script> </head> ? <body> <div id="chat"> ?<textarea wrap="physical" style="line-height:20px;font-size:12px;height:100px;width:200px;"></textarea> ?<BR /> ?<input id="my_chat" type="text" /> ?<button id="chat_btn" disabled="disabled">发言</button> </div> <div id="mwebtime"></div> </body> </html> PHP教程data.php页面如下:
代码如下:
<?php
header("Expires: Mon,26 Jul 1997 05:00:00 GMT");? header("Last-Modified: ".gmdate("D,d M Y H:i:s")." GMT");? header("Cache-Control: no-cache,must-revalidate");? header("Pramga: no-cache"); set_time_limit(0); $get = $_GET['action']; $type = $_GET['type']; $file = $type.'.txt'; if(isset($get) && isset($type) && file_exists($file)){ ?switch($get){ ? case 'first': ?? $chat = file_get_contents($file); ?? $json=array( ??? 'status' => 200, ??? 'time' => gmdate("s"), ??? 'chat' => $chat, ?? ); ?? echo json_encode($json); ?? break; ? case 'while': ?? $oldsize = filesize($file); ?? $newsize = filesize($file); ?? while(true){ ??? if($oldsize!=$newsize){ ???? $chat = file_get_contents($file); ???? $json=array( ????? 'status' => 200, ????? 'time' => gmdate("s"), ????? 'chat' => $chat, ???? ); ???? echo json_encode($json); ???? exit; ??? } ??? clearstatcache(); ??? $newsize = filesize($file); ??? usleep(10000); ?? } ?? break; ?} } ?> PHP教程send.php页面如下:
代码如下:
<?php
$json = array(); $txt = isset($_GET['txt'])?$_GET['txt']:''; $type = isset($_GET['type'])?$_GET['type']:''; if($txt!=''){ ?$file = $type.".txt"; ?if(file_exists($file)){ ? $fp = fopen($file,"a"); ? $str = "rn".'Admin:'.$txt; ? //$str = $txt."n"//linux; ? fwrite($fp,$str); ? fclose($fp); ? $json['status']=200; ? echo json_encode($json); ? exit; ?} } ?> PHP教程希望本文所述对大家的php程序设计有所赞助. 编程之家培训学院每天发布《PHP+jquery+ajax实现即时聊天功能实例》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |