ホームページ >php教程 >php手册 >PHP+MySQL に基づいたチャット ルームのデザイン

PHP+MySQL に基づいたチャット ルームのデザイン

WBOY
WBOYオリジナル
2016-06-21 09:14:41815ブラウズ

mysql|チャットルーム|デザイン

MySQL は強力な同時実行性と高速な応答速度を備え、優れたパフォーマンスを備えたデータベース ソフトウェアです。PHP は強力なサーバーサイド スクリプト言語です。 Webサイト開発では、筆者はPHP4.0+MySQL3.23.38を使用して、さまざまなアプリケーションを構築しました。次に、単純なチャット ルームのデザインを例として、Web 開発における PHP + MySQL のアプリケーションを紹介します。

1.全体デザイン

1. 1 コンセプトと計画:

チャットルームの基本原理は、同じWebページに接続している各ユーザーが送信した音声データを保存し、すべての音声データを各ユーザーに送信することです。つまり、チャットルームの機能は、全員の発言をデータベースに収集し、データベース内のデータを全員に送信することで実現されます。

1.2 テーブルの設計

まず、MySQL を使用してユーザーのコメントを保存するテーブル チャットを作成します:

mysql> CREATE TABLE chat
-> (chtime DATATIME,
->nick CHAR(10) NOT NULL,
- >words CHAR(150));

テーブルに設定されているフィールドは 3 つだけで、chtime はスピーチの時間、nick は話者のニックネーム、words はスピーチの内容、スピーチは150文字まで

1. 3 Web デザイン

最も単純なチャット ルームには通常 2 つのページ フレームが必要です。1 つのページ フレームはユーザーがコメントを入力するためのフォームであり、もう 1 つは全員のコメントを表示するために使用されます。したがって、通常、コードセグメントには少なくとも次のセグメントが必要です:

ページフレームの構造を確立する (main.php)



全員の発言を表示するプログラムセグメント (cdisplay.php)

送信するプログラムセグメントユーザーの音声 (speak.php)

ユーザーがチャット ルーム プログラム セグメント (login.php) にログインします

2. コード設計

上記の計画が完了したら、PHP を使用してコード設計を開始できます。上記の機能は非常に簡単です。

2.1 ユーザーログインlogin.php、このコードは完全なHTMLウェブページです



ユーザーログイン

ニックネームを入力してください






ユーザーがニックネームを送信した後、次のようにチャット ルームに入ります。 main.php による。

2.2 ページフレームのメインコードセグメント main.php:

setcookie("nick",$nick) //Cookie を使用してユーザーのニックネームを記録するのは、変数を渡す一般的な方法です
?>
< ; html>
山西アルミニウム工場チャットルーム 体験版ver1.0






2.3 音声を表示する cdisplay.php

このコードのタスクセグメントはチャットテーブル内のデータを取り出してページフレーム内に表示します。更新されるたびに、データベース内の最新の 15 個のステートメントがフェッチされます。同時に、データベースが無制限に増大しないように、古いデータを削除する機能を設計する必要があります。コードは次のとおりです



ユーザーコメントを表示



$link_ID=mysql_connect("main","root");
//リンクされた Mysql サーバーのサーバー名は main、管理者名は root
mysql_select_db(" abc"); //データベースを選択
$str="select * from chat ORDER BY chtime;" //クエリ文字列
$result=mysql_query($str, $link_ID); //クエリを送信
$ rows=mysql_num_rows ($result); //クエリ結果のレコード数を取得します
//最後の 15 個のコメントを取得して表示します
@mysql_data_seek($resut,$rows-15); //レコード ポインタを移動します最初の 15 レコード
if ($rows<15) $l=$rows; else $l=15; //レコードの合計数が 15 未満の場合、レコードの最大数は次のとおりです
for ($i= 1;$i<=$l;$i++) {
list($chtime,$nick,$words)=mysql_fetch_row($result);
echo $chtime; echo " ";echo $nick":" ; echo $words; echo "
";
}
//ライブラリ内の古いデータをクリアします
@mysql_data_seek($result,$rows-20) //レコードポインタを最初の 20 レコードに移動します
list( $limtime)=mysql_fetch_row($result);
$str= "DELETE FROM chat WHERE chtime$result=mysql_query($str,$link_ID); // クエリ文字列だけを残して送信します。データベース内の最初の 20 レコード
mysql_close($link_ID);
?>



2.4 データベースに音声を送信 speech.php

🎜話す


If ($words)
{ $link_ID=mysql_connect("main","root");
mysql_select_db( " abc"); //データベース名は abc
$time=date(y).date(m).date(d).date(h).date(i).(date(s); //現在の時刻
$str="チャット(chtime,nick,words)の値に挿入
('$time','$nick','$words');" ;" Send データベースに話す
mysql_close($link_ID);
}
?>
//話すフォームを入力してください





< ;/html> ;

上記の作業が完了すると、シンプルなチャット ルームが完成します。もちろん、現在のチャット ルームのメンバーのリストを表示するページ フレームを追加するなど、デザイナーが個人的なデザインを作成することもできます。音声絵文字の追加、スピーカー IP の取得、ページのさらなる美化など。




声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。