ホームページ >バックエンド開発 >PHPチュートリアル >PHP+mysql+ajaxで軽量チャットルームを実装する方法

PHP+mysql+ajaxで軽量チャットルームを実装する方法

墨辰丷
墨辰丷オリジナル
2018-05-31 15:56:062163ブラウズ

この記事では、主に 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(&#39;无法连接: &#39; . mysql_error());
 mysql_select_db("databasename") or die(&#39;没有你找到指定数据库&#39;);
 return true;
}
function quote($strText)
{
  $Mstr = addslashes($strText);
  return "&#39;" . $Mstr . "&#39;";
}
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(&#39;dbconnect.php&#39;);
   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(&#39;Query failed: &#39; . 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(&#39;dbconnect.php&#39;);
   db_connect();
   $sql = "SELECT *, date_format(chatdate,&#39;%Y年%m月%d日 %r&#39;) 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(&#39;Query failed: &#39; . mysql_error());
   // Update Row Information
   $msg="<table border=&#39;0&#39; style=&#39;font-size: 10pt; color: white; font-family: verdana, arial;&#39;>";
   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 のメール アドレス

php "{}" 中括弧の使用法の概要

以上がPHP+mysql+ajaxで軽量チャットルームを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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