首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于ajax的聊天系统

基于ajax的聊天系统
EN

Stack Overflow用户
提问于 2016-08-06 14:51:57
回答 1查看 182关注 0票数 1

代码语言:javascript
复制
<?php
        if (isset($_GET['conv_id'])) {
            $conversation = $_GET['conv_id'];
            $select_conv = "select * from messages where conv_id='$conversation'";
            $run_conv = mysqli_query($conn, $select_conv);
            while ($row_conv = mysqli_fetch_array($run_conv)) {
                $message_text = $row_conv['msg_topic'];
                $message_user_1=$row_conv['sender'];
                $message_user_2=$row_conv['receiver'];
                if($message_user_1==$user_email){
                echo "<div class='col-md-7' style='box-shadow: 0 0 3px #101010;border-radius: 4px;margin-bottom: 10px ;padding: 20px;float: right; background-color: #eeeeee'>$message_text</div>";
            }
                elseif ($message_user_1==$user_id){
                    echo "<div class='col-md-7' style='box-shadow: 0 0 3px #101010;border-radius: 4px;margin-bottom: 10px ;padding: 20px;float: right; background-color: #eeeeee'>$message_text</div>";
                }
else{
    echo "<div class='col-md-7' style='box-shadow: 0 0 3px #101010;border-radius: 4px;margin-bottom: 10px ;padding: 20px;float: left;background-color: #67b168'>$message_text</div>";
}
   }          
   echo "<div class='col_md-12'>
<form action='' method='post''>
<div class=\"form-group\">
  <label for=\"comment\"></label>
  <textarea class=\"form-control\" rows=\"5\" id=\"comment\" name='message_content' required></textarea>
</div>
<button type='submit' class='btn btn-default' name='send_msg'>Send</button>
</form>
<br>
<br>
<br>
</div>";
}
?>
    </div>
        <?php
if(isset($_POST['send_msg'])){
    $conv_id=$_GET['conv_id'];
    $message_file=$_POST['message_content'];
    $user_sender=$row['user_id'];
    $insert_message="insert into messages(conv_id,msg_topic,msg_date,sender,receiver,status) VALUES ('$conversation','$message_file',NOW(),'$user_email','','unread')";
    $run_message=mysqli_query($conn,$insert_message);
    if($run_message){  
        echo "<script>window.open('mymessages.php?conv_id=$conv_id','_self')</script>";
    }
}
?>

我有一个聊天系统与PHP的工作与它们之间的关系与外键的表它的工作权利,但它的速度很慢,因为它需要重新加载页面,它不是很漂亮

我需要一个Ajax代码或Jquery或js代码来做这件事,而不需要重新加载页面

EN

回答 1

Stack Overflow用户

发布于 2016-08-06 14:56:40

AJAX和Socket是两个不同的东西。

AJAX不提供持久化连接,而as Sockets提供。如果你想在中使用PHP 创建聊天系统,可以学习Websockets in PHP

如果你想使用AJAX来构建聊天系统,你可以尝试长轮询,它的作用类似于持久连接,但它不如Sockets流畅和可靠。

要构建聊天系统,SocketsAJAX更受欢迎。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38801426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档