php mysql チャット ルーム チュートリアル チュートリアル_PHP チュートリアル
チャット ルームを実装できるプログラムは数多くありますが、原理は単純で、更新せずに実装できます。最も単純なものは、iframe を使用してページを常に更新し、データベースからユーザーのレコードを読み取ることです。
MySQL は強力な同時実行性と高速な応答速度を備え、優れたパフォーマンスを備えたデータベース ソフトウェアです。PHP は強力なサーバーサイド スクリプト言語です。山西アルミニウム工場の Web サイト開発では、筆者は PHP4.0+MySQL3.23.38 を使用してさまざまなアプリケーションを構築しました。次に、単純なチャット ルームのデザインを例として、Web 開発における PHP + MySQL のアプリケーションを紹介します。
1.全体デザイン
1.1 構想と計画:
チャットルームの基本原理は、同じWebページに接続している各ユーザーが送信した音声データを保存し、すべての音声データを各ユーザーに送信することです。つまり、チャットルームの機能は、全員の発言をデータベースに収集し、データベース内のデータを全員に送信することで実現されます。
1.2 テーブルデザイン
まず、MySQL を使用して、ユーザー コメントを保存するためのテーブル チャットを作成します。
コードは次のとおりです | コードをコピー |
mysql> CREATE TABLE チャット |
テーブルに設定されるフィールドは 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 Webページです
コードは次のとおりです | コードをコピー |
<html> <頭> <title>ユーザーログイン</title> </頭> <本文>ニックネームをご入力ください<br> <form action=”main.php” Method=”post” target=”_self”> <input type=”text” name=”nick”cols=”20”> <入力タイプ=”送信” 値=”ログイン”> </本文> </html> |
ユーザーがニックネームを送信した後、チャットルームに入室すると、以下の処理が main.php によって処理されます。
2.2 ページフレームのメインコード部分 main.php:
コードは次のとおりです | コードをコピー |
<? <html> |
2.3 音声表示 cdisplay.php
このコードセグメントのタスクは、チャットテーブルからデータを取り出してページフレームに表示することです。更新されるたびに、データベース内の最新の 15 個のステートメントがフェッチされます。同時に、データベースが無制限に増大しないように、古いデータを削除する機能を設計する必要があります。コードは次のとおりです
コードは次のとおりです | コードをコピー |
<html> <頭> <title>ユーザーコメントを表示</title> <meta http-equiv=”refresh” content=”5;url=cdisplay.php”> </頭> <本体> <? $link_ID=mysql_connect("メイン","ルート"); //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":" ; echo " "; } //ライブラリ内の古いデータを消去します @mysql_data_seek($result,$rows-20); //レコードポインタを最初の 20 レコードに移動します list($limtime)=mysql_fetch_row($result); $str=”チャット WHERE から削除 chtime<’$limtime’ ; ” $result=mysql_query($str,$link_ID); //最初の 20 レコードのみをライブラリに残してクエリ文字列を送信します mysql_close($link_ID); ?> </本文> </html> |
2.4 音声をデータベースspeak.phpに送信する
コードは次のとおりです | コードをコピー |
<html> <頭> </頭> <本体> <? もし ($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)値に挿入 ('$タイム','$ニック','$ワード');” mysql_query($str,$link_ID); // ステートメントをデータベースに送信します mysql_close($link_ID); } ?> |
コードをコピー | |
<form action=”speak.php” method=”post” target=”_self”>
<input type=”text” name=”words”cols=”20”> |
以上の作業が完了すると、簡易チャットルームが完成します

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











MySQLとPHPMyAdminは、次の手順を通じて効果的に管理できます。1。データベースの作成と削除:PHPMyAdminをクリックして完了します。 2。テーブルの管理:テーブルを作成し、構造を変更し、インデックスを追加できます。 3。データ操作:データの挿入、更新、削除、SQLクエリの実行をサポートします。 4。データのインポートとエクスポート:SQL、CSV、XML、およびその他の形式をサポートします。 5。最適化と監視:最適化可能なコマンドを使用してテーブルを最適化し、クエリアナライザーと監視ツールを使用してパフォーマンスの問題を解決します。

session_start()iscrucialinphpformangingusersions.1)itInitiateSanewsessionifnoneExists、2)resumesanexistingsession、および3)SetSessionCookieforcontinuityAcrossRequests、ApplicationslicationSliviseSlikeUserauthicationAnticatent。

MySQLでは、AlterTabletable_nameaddcolumnnew_columnvarchar(255)afterexisting_columnを使用してフィールドを追加し、andtabletable_namedopcolumncolumn_to_dropを使用してフィールドを削除します。フィールドを追加するときは、クエリのパフォーマンスとデータ構造を最適化する場所を指定する必要があります。フィールドを削除する前に、操作が不可逆的であることを確認する必要があります。オンラインDDL、バックアップデータ、テスト環境、および低負荷期間を使用したテーブル構造の変更は、パフォーマンスの最適化とベストプラクティスです。

MASQLのインストールは、次の手順で実現できます。1。コマンド/bin/bash-c"$(curl-fsslhttps://raw.githubusercontent.com/homebrew/install/head/install.sh)を使用して、Homebrewをインストールします。 2. Homebrewを更新し、Brewupdateを使用します。 3. mysqlをインストールし、Brewinstallmysqlを使用します。 4. mysqlサービスを開始し、Brewservicesstartmysqlを使用します。インストール後、MySQL-Uを使用できます

MySQL関数は、データ処理と計算に使用できます。 1.基本的な使用には、文字列処理、日付計算、数学操作が含まれます。 2。高度な使用法には、複数の関数を組み合わせて複雑な操作を実装することが含まれます。 3.パフォーマンスの最適化では、Where句での機能の使用を回避し、GroupByおよび一時テーブルを使用する必要があります。

安全かつ徹底的にMySQLをアンインストールし、すべての残留ファイルをクリーンにするには、次の手順に従ってください。1。MySQLサービスを停止します。 2。MySQLパッケージをアンインストールします。 3.構成ファイルとデータディレクトリのクリーン。 4.アンインストールが徹底していることを確認します。

MySQLでデータを挿入するための効率的な方法には、次のものが含まれます。1。insertInto ...値構文、2。LoadDatainFileコマンドの使用、3。トランザクション処理の使用、4。バッチサイズの調整、5。Insurtignoreまたは挿入の使用...

Composerは、PHPの依存関係管理ツールであり、Composer.jsonファイルを介してプロジェクトの依存関係を管理しています。 1)依存関係情報を取得するためのComposer.jsonを解析する。 2)依存関係を解析して、依存性ツリーを形成します。 3)PackagistからVendorディレクトリへの依存関係をダウンロードしてインストールします。 4)Composer.Lockファイルを生成して、依存関係バージョンをロックして、チームの一貫性とプロジェクトの保守性を確保します。
