网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的范文:

 

标题 php网页版聊天软件实现代码
范文
    本文实例为大家分享了php匿名聊天室的具体实现代码,供大家参考,具体内容如下
    1. index.html    
    <html>
     <head>
      <title>聊天室</title>
      <meta charset="utf-8"/>
      <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
      <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
      <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
      <link href="./css/style.css" rel="stylesheet"/>
      <script>
       var maxid = 0;
       function showmessage() {
        //创建ajax对象
        var xhr = new XMLHttpRequest();
        //监听
        xhr.onreadystatechange = function () {
         if (xhr.readyState === 4) {
          eval("var info=" + xhr.responseText);
          var text = "";
          for (var i = 0; i < info.length; i++)
          {
           text += "<div class='alert alert-success'>" +
             "<span class='name'>" + info[i].send + ":</span>" +
             "<span class='message'>" + info[i].content + "</span>" +
             "<span>(" + info[i].time + ")</span>" +
             "</div>";
           maxid = info[i].id;
          }
          var old = document.getElementById("msg").innerHTML;
          document.getElementById("msg").innerHTML = old + text;
          document.getElementById("msg").scrollTop = document.getElementById("msg").scrollHeight;
         }
        };
        //初始化
        xhr.open("get", "./action.php?maxid=" + maxid);
        //发送
        xhr.send();
       }
       $(document).ready(
         function ()
         {
          showmessage()
          self.setInterval("showmessage()", 2000);
         }
       );
       function send() {
        var postData ="content="+document.getElementById('content').value;
        var xhr = new XMLHttpRequest();
        xhr.open("POST", "./add.php", true);
        //一定要写头信息不然服务器接收不到
        xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xhr.onreadystatechange = function () {
         var XMLHttpReq = xhr;
         if (XMLHttpReq.readyState == 4) {
          if (XMLHttpReq.status == 200) {
           document.getElementById('content').value="";
          }
         }
        };
        xhr.send(postData);
       }
      </script>
     </head>
     <body>
      <div id="main">
       <!--聊天室名字-->
       <div>
        <h3>
         匿名者聊天室
        </h3>
       </div>
       <!--聊天室名字-->
       <!--聊天室消息框-->
       <div>
        <div>
         <!--     消息框样式-->
         <!--
         <div>成功!很好地完成了提交。</div>
         <div>信息!请注意这个信息。</div>
         <div>警告!请不要提交。</div>
         <div>错误!请进行一些更改。</div>
         -->
         <div id="msg">
         </div>
         <!--聊天室消息框-->
         <div >
          <form role="form">
           <div>
            <label for="name">发送消息</label>
            <textarea id="content" name="content"
               style="resize: none;font-family: Microsoft YaHei;" rows="3" >
            </textarea>
           </div>
           <div>
            <button type="button" onclick="send()">
             <span></span>
             发送
            </button>
           </div>
          </form>
         </div>
         <!--聊天室发送框-->
        </div>
       </div>
      </div>
     </body>
    </html>
    2. action.php 
    <?php
    $link = mysqli_connect('localhost', 'root', '123', 'test');
    mysqli_query($link, 'set names utf8');
    $info= array();
    header("Content-type: text/html; charset=utf-8");
    $id=$_GET['maxid'];
    $data = mysqli_query($link, "select * from talk where id>$id");
    while ($array = mysqli_fetch_assoc($data)) {
     $info[] = $array;
    };
     echo json_encode($info);
    3. chat.sql 
    DROP TABLE IF EXISTS `talk`;
    CREATE TABLE `talk` (
     `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
     `send` varchar(10) CHARACTER SET utf8 DEFAULT NULL COMMENT '发送者昵称',
     `ip` varchar(12) CHARACTER SET utf8 DEFAULT NULL,
     `content` varchar(500) CHARACTER SET utf8 DEFAULT NULL,
     `time` varchar(50) DEFAULT NULL,
     PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
    4. add.php
    <?php
    /**
     * @功能 将表单插入数据库
     */
    $content=$_POST['content'];
    print_r($_POST);
    $time= date("Y-m-d H:i:s", time(0));
    $link = mysqli_connect('localhost', 'root', '123', 'test');
    mysqli_query($link, 'set names utf8');
    $ip = $_SERVER["REMOTE_ADDR"];
    $sql="INSERT INTO talk VALUES(NULL,'匿名者','$ip','$content','$time')";
    $data = mysqli_query($link,$sql);
    echo "$content";
    if($data)
     echo "1";
     else
      echo "0";
    以上就是本文的全部内容,希望对大家的学习有所帮助
随便看

 

在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/20 8:33:08