/* $chat_lenght is the number of messages displayed */
$chat_lenght = 10;
/* $max_file_size is the maximum file size the msg.txt file can reach */
/* assuming that any chatter doesn't write a message longer than */
/* $max_single_msg_lenght (this case: 100,000 bytes = 100Kb) */
/* check if file size is over maximum (set with $max_file_size ) */
$file_size= filesize($chat_file);
/* if file size is more than allowed then */
/* reads last $chat_lenght messages (last lines of msg.txt file) */
/* and stores them in $lines array */
/* then deletes the "old" msg.txt file and create a new msg.txt */
/* pushing the "old" messages stored in $lines array into the */
/* "new" msg.txt file using $msg_old. */
/* Note: this is done in order to avoid huge msg.txt file size. */
if ($file_size > $max_file_size) {
/* reads file and stores each line $lines' array elements */
$lines = file($chat_file_ok);
/*get number of lines */
/* the following is because every message has to be */
/* placed into one single line in the msg.txt file. */
/* You can render \n (new lines) with "<br>" html tag anyway. */
$msg = str_replace ("\n"," ", $message);
/* if the user writes something... */
/* the new message is appended to the msg.txt file */
/* REMEMBER: the message is appended, hence, if */
/* you want the last message to be displayed as the */
/* first one, you have to */
/* 1. store the lines (messages) into the array */
/* 2. read the array in reverse order */
/* 3. post the messages in the output file (the chat) */
/* I added these three lines in order to avoid buggy html code and slashes */
$msg = str_replace ("\n"," ", $message);
$msg = str_replace ("<", " ", $msg);
$msg = str_replace (">", " ", $msg);
$msg = stripslashes ($msg);