PHP-based chat room (1)
Source: limodou
Author: Mike Hall
Translator: limodou
Once upon a time, there was a very popular web chat room called the Star Trekker chat room. I'm in this chat room thanks to a friend of mine, and even though the Star Trekker chat buddies are almost certainly not from the same circle as me, I find most of them to be friendly and interesting. But when Star Trekker shut down, thanks to Perl running in the background, it ate up the server's resources, so these happy and friendly people had to leave and had nowhere to go. I was lucky enough to open my own chat room imitating Star
Trekker during that time, and began to try to connect with many of the original Trekker’s homeless chat rooms. Wary of the resource consumption problems caused by Perl, I was very happy when a friend recommended PHP to me.
This well-designed web chat room takes the variables passed in from the form, processes them into HTML, and writes them to a file. Put the form and message files in a frame, and you can see that it looks a lot like a chat room called BeSeen. The nice thing about it, of course, is that
our chat room is a little smarter than its BeSeen cousin.
Name :
Message :
The above is the basic form for input. You might want to make it more aesthetically pleasing, but for all intents and purposes, this is what you're dealing with. It sends two variables to chat.php3, called $name and $message.
However, before processing those variables, we need to take out the current content from the message file, otherwise we can only see one message at a time. There is almost no one way to manage the conversation. As long as I am familiar with the structure of my own message file, I know that every message ends with a carriage return character. This means that you can use the file() function to read the message file into an array.
The message file has 12 lines. In the 12 lines, line 1 contains header information, lines 2 to 11 are old messages, and line 12 contains my footer.
What I'm most interested in is getting a string that contains all those old messages.
// Read the file into an array