1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > php和ajax实现聊天功能 怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能

php和ajax实现聊天功能 怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能

时间:2023-04-08 21:12:48

相关推荐

php和ajax实现聊天功能 怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能

怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能

发布时间:-12-19 16:19:01

来源:亿速云

阅读:81

作者:Leah

本篇文章给大家分享的是有关怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

这是一个简单的利用jquery与php做的一个聊天室的源码,我们这里定时利用ajax读取数据库并进行刷新了,下面直接参上源码,实例代码如下:

index.html页面如下:

复制代码 代码如下:

无标题文档

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(),

type:'l'

},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',

type:'l'

},function(data){

$('#mwebtime').html(data.time);

$('#chat textarea').val(data.chat);

$('#chat textarea').stop(true,true).animate({scrollTop:9999}, 1);

chat.socket();

});

},

btn_status:{

_false:function(){

$('#chat_btn').html('等待').attr('disabled',true);

},

_true:function(){

$('#chat_btn').html('发言').attr('disabled',false);

}

}

}

chat.init();

发言

data.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;

}

}

?>

send.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项目中使用jquery与ajax实现一个即时聊天功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

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