Home  >  Article  >  Backend Development  >  ajax php chat room example code (1/5)_PHP tutorial

ajax php chat room example code (1/5)_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:58:09962browse

/*
ajax php chat room example code
But it must be based on the following terms:
*Signature. You must clearly identify the author. .
*Non-commercial use. You may not use the current work for commercial purposes.
* Be consistent. If you change, transform, or construct a new work based on a current work, you shall distribute the final work under exactly the same license as the current one
* For any secondary use or distribution, you must let others clarify the licensing terms of the current work
* Certain terms here can be waived with the express permission of the author

This agreement is a simple and easy-to-read summary of the legal text (the complete agreement)
******************************************/
//******************Parameter settings****************
//Display online users

$disonline = true;
//Number of recent content displayed when new logging in (default is 30)
$leastnum = 30;
//Default room name (default is to change one file every day), if you remove d, it will be one file every month
$room = date("y-m-d");
//The room save path must end with /
$roomdir = "rooms/";
//Encoding method
$charset = "utf-8";
//The maximum number of content items displayed on the client (it is recommended not to be too large)
$maxdisplay = 300;


//Language
$lang = array(
//Chat room description
"description"=>"Welcome to the mini ajax chat room. The latest version 1.2. To download, please go to www.bKjia.c0m" ,
//Chat room title
"title"=>"mini ajax chatroom by longbill",
//The first welcome to the chat room
"firstone"=>"welcome to longbill's mini ajax chatroom!",
//Displayed when the message contains prohibited content
"ban"=>"i am a pig!",
//Keyword
"keywords"=>"Chat room,mini,small,ajax,chat,chatroom,longbill,bKjia.c0m,php,web page special effects",
//Speech prompt
"hereyourwords" => "Speak here!"
);

error_reporting(e_all ^ e_notice ^ e_warning);
header("content-type:text/html; charset=utf-8");

$get_past_sec = 3; //If you find lost words, you can increase this value appropriately
$touchs = 10; //Time interval for checking the number of people online

if (!function_exists("file_get_contents"))
{
function file_get_contents($path)
{
if (!file_exists($path)) return false;
$fp=@fopen($path,"r");
$all=fread($fp,filesize($path));
fclose($fp);
return $all;
}
}

if (!function_exists("file_put_contents"))
{
function file_put_contents($path,$val)
{
$fp=@fopen($path,"w");
fputs($fp,$val);
fclose($fp);
return true;
}
}

$title = $lang["title"];
$earlier = 10;
$description = $lang["description"];
$origroom = $room;
$least = ($_get["dis"])?intval($_get["dis"]):$leastnum;
$touchme = $_post['touchme'];
if (!is_dir($roomdir)) @mkdir($roomdir) or die("error when creating folder $roomdir");
$room = $_get['room'];
if (!$room) $room = $_post["room"];
$room = checkfilename($room);
if (!$room) $room = $origroom;
$filename = $roomdir.$room.".dat.php";
$datafile = $roomdir.$room.".php";
if (!file_exists($filename)) @file_put_contents($filename,''."n".time()."|".$lang["firstone"]." n");
if (!file_exists($datafile)) @file_put_contents($datafile,''."n");
$action = $_post["action"];

function checkfilename($file)
{
if (!$file) return "";
$file = trim($file);
$a = substr($file,-1);
$file = eregi_replace("^[./]*","",$file);
$file = eregi_replace("[./]*$","",$file);
$arr = array("../","./","/","","..",".");
$file = str_replace($arr,"",$file);
return $file;
}

1 2 3 4 5

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/632034.htmlTechArticle?php tutorial/* ajax php chat room example code but must be based on the following terms: * Signature. You must clearly identify the author. . *Non-commercial use. You may not use your current work for commercial purposes...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn