The last of the main modules is Example 21-11,
messages.php. The program starts by
checking whether a message has been posted in the
'text'. If so, it is inserted into the
messages table. At the same time, the value of
'pm' is also stored. This indicates
whether a message is private or public: a
0 represents a public message and
1 is private.
Next, the user’s profile and a form for entering a message are displayed, along with radio buttons to choose between sending a private or public message. After this, all the messages are shown: if they are public, all users can see them, but private messages are visible only to the sender and recipient. This is all handled by a couple of queries to the MySQL database. Additionally, when a message is private, it is introduced by the word “whispered” and shown in italic.
Finally, the program displays a couple of links to refresh the
messages (in case another user has posted one in the meantime) and to view
the user’s friends. The trick using the variables
$name2 is again used so that when a user views
his own profile the word Your is displayed instead of
You can see the result of viewing this program with a browser in Figure 21-7. Note how users viewing their own messages are provided with links to erase any they don’t want to preserve.
<?php // messages.php include_once 'header.php'; if (!$loggedin) die(); if (isset($_GET['view'])) $view = sanitizeString($_GET['view']); ...