この記事では、主に PHP + mysql + ajax 軽量チャット ルームの実装方法を紹介し、リアルタイム チャット ルーム機能を実現するための php + mysql の具体的な手順と関連実装テクニックをサンプルの形式で分析します。参考にしてください
QQ チャットと出会い系 Web サイトを作成し、チャット機能を追加したかったので、PHP を使用してシンプルで強力なチャット ルームを作成しました
1. mysql データベース テーブルを作成します:
コード コードは次のとおりです:
create table chat(id bigint AUTO_INCREMENT,username varchar(20), chatdate datetime,msg varchar(500), Primary key(id));
2. 推奨されるデータベース接続を書き込みます。 function:
dbconnect.php
<?php function db_connect() { date_default_timezone_set("Asia/Shanghai"); $link = mysql_connect("xxx.xxx.xxx.xxx", "databasename", "password") or die('无法连接: ' . mysql_error()); mysql_select_db("databasename") or die('没有你找到指定数据库'); return true; } function quote($strText) { $Mstr = addslashes($strText); return "'" . $Mstr . "'"; } function isdate($d) { $ret = true; try { $x = date("d",$d); } catch (Exception $e) { $ret = false; } echo $x; return $ret; } ?>3. ajax 送受信関数を作成します: ajax 送信関数 chat_send_ajax.php
<?php require_once('dbconnect.php'); db_connect(); $msg = iconv("UTF-8","GB2312",$_GET["msg"]); $dt = date("Y-m-d H:i:s"); $user = iconv("UTF-8","GB2312",$_GET["name"]); $sql="INSERT INTO chat(USERNAME,CHATDATE,MSG) " . "values(" . quote($user) . "," . quote($dt) . "," . quote($msg) . ");"; echo $sql; $result = mysql_query($sql); if(!$result) { throw new Exception('Query failed: ' . mysql_error()); exit(); } ?>ajax 受信関数 chat_recv_ajax.php
りー
4. チャット ルーム ページ: chat .html
<?php header("Content-Type:text/html;charset=gb2312"); header("Expires: Thu, 01 Jan 1970 00:00:01 GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); require_once('dbconnect.php'); db_connect(); $sql = "SELECT *, date_format(chatdate,'%Y年%m月%d日 %r') as cdt from chat order by ID desc limit 200"; $sql = "SELECT * FROM (" . $sql . ") as ch order by ID"; $result = mysql_query($sql) or die('Query failed: ' . mysql_error()); // Update Row Information $msg="<table border='0' style='font-size: 10pt; color: white; font-family: verdana, arial;'>"; while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { $msg = $msg . "<tr><td>" . $line["cdt"] . " </td>" . "<td>" . $line["username"] . ": </td>" . "<td>" . $line["msg"] . "</td></tr>"; } $msg=$msg . "</table>"; echo $msg; ?>レンダリングは次のとおりです: 概要: 上記はこの記事の全内容です。みんなの勉強に。 関連する推奨事項:
PHP がバイパス無効化関数を通じてシステム コマンドを実行する方法
以上がPHP+mysql+ajaxで軽量チャットルームを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。