jQuery Chat

码农软件 · 软件分类 · 其他jQuery插件 · 2020-01-14 16:58:47

软件介绍

Ajax chat

You'll need some php/html/css to make the chat work.

The php is an example using the Kohana framework, the only important thing is json_encode() function you must use for every output.

You cannot specify a username with the javascript, the username is retrieved from a database or a session. The only var sent to the PHP is the message itself.

All code is in french, will release it in english if it has some success

Html markup :

<div id="container-principal">
<div class="chat">
<div></div>
</div>
<form action="" method="post">
<input type="text" value="" class="zoneClavier" />
</form>
<img src="/img/ajax-loader.gif" class="ajaxStatus" />
</div>

CSS code :

#chat {
position:relative;
}
#chat .chat {
position:relative;
overflow:hidden;
border:1px solid #bbb;
height:270px;
padding:5px;
background:#eee;
margin-bottom:5px;
}

#chat .chat div {
position:absolute;
width:100%;
bottom:0;
}

#chat .chat p {
margin:0
}

/* zoneClavier */
.zoneClavier {
margin:0 5px 0 0;
padding:0;
/* visibility:visible;*/
}

.zoneClavier input {
font-size:20px;
margin:0;
padding:0;
border:1px solid #999;
}

.zoneClavier input:focus {
background:yellow;
border-color:cyan;
}

.ajaxStatus {
position:absolute;
top:-25px;
right:10px;
}

.hide {
display:none;
}

Php code

Using Kohana php mvc framework, $this->pseudo is the nickname

<?php
function ecrire() {
   
$msg=trim(strip_tags($_POST['msg']));
   
$this->db->set('pseudo',$this->pseudo);
   
$this->db->set('msg',$msg);
   
$this->db->insert('chat_message');
   
$data=array('msg' => $msg, 'pseudo' => $this->pseudo);
    if(!empty(
$msg))
        echo
json_encode($data);
    else
        echo
json_encode('');
}

function
lire() {
    if(empty(
$_SESSION['last_chat_message_id'])) $_SESSION['last_chat_message_id']=0;
   
$messages=$this->db->query('select pseudo, msg, id_msg from
        (select pseudo, msg, id_msg from chat_message
        where pseudo!=\''
.$this->pseudo.'\'
        and id_msg>'
.$_SESSION['last_chat_message_id'].'
        order by id_msg desc limit 50) as messages order by messages.id_msg'
);
    if(
$messages->count() > 0) {
       
$tab_messages=$messages->result_array();
       
$_SESSION['last_chat_message_id']=$tab_messages[count($tab_messages)-1]->id_msg;
        echo
json_encode($tab_messages);
    } else echo
json_encode('');
}
?>

本文地址:https://www.codercto.com/soft/d/23376.html

Inside Larry's and Sergey's Brain

Inside Larry's and Sergey's Brain

Richard Brandt / Portfolio / 17 Sep 2009 / USD 24.95

You’ve used their products. You’ve heard about their skyrocketing wealth and “don’t be evil” business motto. But how much do you really know about Google’s founders, Larry Page and Sergey Brin? Inside......一起来看看 《Inside Larry's and Sergey's Brain》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具