Specifications
After you’ve built up a base of subscribers to your Web site, it’s nice to be able to keep in
touch with them by sending out a newsletter. In this chapter, we will implement a front end for
a mailing list manager (or MLM). Some MLMs allow each subscriber to send messages to
other subscribers. Our program will be a newsletter system, in which only the list administrator
can send messages. We will call our system Pyramid-MLM.
This system will be similar to others already in the marketplace. To get some idea of what we
are aiming for, take a look at
http://www.topica.com
Our application will let an administrator create multiple mailing lists and send newsletters to
each of those lists separately. This application will use file upload to enable an administrator
to upload text and HTML versions of newsletters that they have created offline. This means
administrators can use whatever software they prefer to create newsletters.
Users will be able to subscribe to any of the lists at our site and select whether to receive
newsletters in text or HTML.
The Problem
We want to build an online newsletter composition and sending system. This system should
allow various newsletters to be created and sent to users, and allow users to subscribe to one or
many of the newsletters.
Specifically, the requirements for this system are
• Administrators should be able to set up and modify mailing lists.
• Administrators should be able to send text and HTML newsletters to all the subscribers
of a single mailing list.
• Users should be able to register to use the site, and enter and modify their details.
• Users should be able to subscribe to any of the lists on a site.
• Users should be able to unsubscribe from lists they are subscribed to.
• Users should be able to store their preference for either HTML formatted or plain text
newsletters.
• For security reasons, users should not be able to send mail to the lists or to see each
other’s email addresses.
• Users and administrators should be able to view information about mailing lists.
• Users and administrators should be able to view past newsletters that have been sent to
a list (the archive).
Building Practical PHP and MySQL Projects
P
ART V
656
34 7842 CH28 3/6/01 3:46 PM Page 656