這篇文章主要介紹了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 += "<p class='alert alert-success'>" + "<span class='name'>" + info[i].send + ":</span>" + "<span class='message'>" + info[i].content + "</span>" + "<span>(" + info[i].time + ")</span>" + "</p>"; 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> <p class="panel panel-default" id="main"> <!--聊天室名字--> <p class="panel-heading"> <h3 class="panel-title"> 匿名者聊天室 </h3> </p> <!--聊天室名字--> <!--聊天室消息框--> <p class="panel-body "> <p class="well no-bottom "> <!-- 消息框样式--> <!-- <p class="alert alert-success">成功!很好地完成了提交。</p> <p class="alert alert-info">信息!请注意这个信息。</p> <p class="alert alert-warning">警告!请不要提交。</p> <p class="alert alert-danger">错误!请进行一些更改。</p> --> <p id="msg" class="showmessage"> </p> <!--聊天室消息框--> <p class="well" > <form role="form"> <p class="form-group"> <label for="name">发送消息</label> <textarea class="form-control" id="content" name="content" style="resize: none;font-family: Microsoft YaHei;" rows="3" > </textarea> </p> <p style="text-align: right"> <button type="button" class="btn btn-primary" onclick="send()"> <span class="glyphicon glyphicon-envelope"></span> 发送 </button> </p> </form> </p> <!--聊天室发送框--> </p> </p> </p> </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";
#總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。 相關推薦:
以上是php網頁版聊天軟體的實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

本文比較了PHP和ASP.NET,重點是它們對大規模Web應用程序,性能差異和安全功能的適用性。兩者對於大型項目都是可行的,但是PHP是開源和無關的,而ASP.NET,

本文討論了PHP數據對象(PDO),這是PHP中數據庫訪問的擴展名。它通過準備好的語句及其對MySQLI的好處,包括數據庫抽象和更好的錯誤處理,強調了PDO在增強安全性方面的作用。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Windows 11 KB5054979中的新功能以及如何解決更新問題
3 週前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
2 週前ByDDD
Inzoi:如何申請學校和大學
3 週前ByDDD
如何修復KB5055518無法在Windows 10中安裝?
2 週前ByDDD
Roblox:Dead Rails - 如何召喚和擊敗Nikola Tesla
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Dreamweaver Mac版
視覺化網頁開發工具

WebStorm Mac版
好用的JavaScript開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。