ホームページ  >  記事  >  バックエンド開発  >  PHP+MySQL_PHP チュートリアルに基づくチャット ルームの設計

PHP+MySQL_PHP チュートリアルに基づくチャット ルームの設計

WBOY
WBOYオリジナル
2016-07-21 16:09:02693ブラウズ

Web サイト開発では、著者は PHP4.0+MySQL3.23.38 を使用してさまざまなアプリケーションを構築しました。次に、単純なチャット ルームのデザインを例として、Web 開発における PHP + MySQL のアプリケーションを紹介します。

1.全体デザイン

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

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

1.2 テーブルデザイン

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

コードをコピー コードは次のとおりです:

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

テーブルに設定されているフィールドは 3 つだけです。chtime はスピーチの時間、nick はスピーチの内容、スピーチは最大 150 文字です。 1.3 Webデザイン

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

ページフレーム(main.php)の構造を作成します

全員が発言する番組部分を表示(cdisplay.php)

ユーザーが話す番組部分(speak.php)を送信します

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

2. コード設計

上記の計画が完了したら、PHPを使用すると上記の機能を非常に簡単に実現できます。

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

コードをコピーします コードは次のとおりです:
入力してくださいニックネーム





ニックネームを送信すると、次の処理が渡されます。 php処理をメインにします。

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



コードをコピーします
コードは次のとおりです:

setcookie("nick",$nick) //変数を渡す一般的な方法は Cookie です?> 山西アルミニウム工場チャットルーム 体験版ver1.0 2.3 音声表示 cdisplay.php


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




コードをコピーします

コードは次のとおりです:

ユーザーのコメントを表示
/head>

$link_ID=mysql_connect("main","root");
//リンクされた Mysql サーバーのサーバー名は root です
mysql_select_db(" " ); //データベースを選択
$str="select * from chat ORDER BY chtime;"; //クエリstring
$result=mysql_query($str, $link_ID); //クエリを送信
$rows=mysql_num_rows($ result); //クエリ結果のレコード数を取得します
//最後の 15 個のコメントを取得して表示します
@mysql_data_seek($resut,$rows-15) //レコード ポインタを最初の 15 レコードに移動します
; if ($ rowsfor ($i=1;$i< ;=$l;$i++) {
list ($chtime,$nick,$words)=mysql_fetch_row($result);
echo $chtime; echo " ";echo $nick echo":" ; echo "
";
}
//ライブラリ内の古いデータをクリアします
@mysql_data_seek($result,$rows-20) //レコードポインタを最初の 20 レコードに移動します
list($limtime); mysql_fetch_row($result);
$str="DELETE FROM chat WHERE<'$limtime' ;"
$result=mysql_query($str,$link_ID);データベース内
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="INSERT INTO chat(chtime,nick,words) 値
( '$time','$ nick','$words');" ;
mysql_query($str,$link_ID); //データベースにステートメントを送信
mysql_close($link_ID);
}
?>
// 話すためのフォームを入力します
< form action="speak.php" method="post" target=" _self">input type="text" name="words" Cols="20"> ;

以上の作業が完了すると、簡単なチャットルームが完成します。もちろん、デザイナーは個人のニーズに応じてカスタマイズできます。たとえば、現在のチャット ルーム メンバーのリストを表示するページ フレームの追加、発言者の IP の取得、チャット メッセージの美化など、個人的なデザインを行うのが好きです。ページなど




http://www.bkjia.com/PHPjc/314593.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/314593.html

技術記事

Webサイト開発では、筆者はPHP4.0+MySQL3.23.38を使用して、さまざまなアプリケーションを構築しました。次に、単純なチャット ルームのデザインを例として、Web 開発における PHP + MySQL のアプリケーションを紹介します。 1.全体的に...

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