Newsletter Management Using PHP w/o mySQL for Beginners

Let's begin by setting some limits. If you're like me, you like to keep it simple. All we're doing is collecting email addresses together for our mailing list, so biochemical engineering is out the window. If you're using Thunderbird (or that MS product), you can send nicely formatted newsletters out and retain all of the other awesome features of your email program so there's really no need for databases, logins, or pretty much anything else. We're going to stay far away from anything non-essential.

To keep it simple, I'll assume you have Dreamweaver or a comparable WYSIWYG composer; however, if you are editing source code you can click here to see an expanded version of this article with source code. Also, I've assumed that you have an extremely basic familiarity with PHP. If not, please begin by reading this PHP introduction (for absolute beginners).

There are only 3 steps we're going to need:

  • Put HTML on the page to collect the user's name and email address.
  • Add in a little PHP and (possibly) change a filename.
  • Receive and process the emails.
  • Marching on, we need to put some HTML on our page to let the visitor enter in their name and email address. To do this using Dreamweaver, you'll need to create a form with the POST method, a text input named visitor_name, a text input named visitor_email, and a submit button.

    We now have our excellent mailing list form up and you should check to make sure that it ended up where you planned. At this point, you may need to make another slight change. If the file's extension is not php, php3, php4, or phtml you should change the file's extension to php. Now, you will need to be careful here as file extensions are extremely important, so you may lose functionality when you change the file's extension. If this is the case, look up the extension and find a tutorial for the language.

    Take a breather and get ready for step 2. Since this is a PHP tutorial, we're going to take a closer look at the PHP code used to send us the email. Being a language, we'll need to learn enough of the PHP vernacular to 1) use the information the user submitted, 2) create the body of the email, and 3) send the email.

    The form we created sends 2 pieces of information: visitor_name and visitor_email. When PHP receives them it realizes that someone POSTed some information and to make it easy for you to get ahold of it creates a couple of special "things" you can use to refer to what the user entered: $_POST['visitor_name'] and $_POST['visitor_email']. Why does it call them by funny names? Well the $_POST part assures you that it was information that was submitted by your visitor and not some other PHP somewhere on your page. The part in quotes allows you to pick which piece of information was submitted by your visitor (don't stress on the brackets - they just separate the two pieces of information).

    Great! We now have our visitor's information, so let's send it to ourselves. Sending email in PHP almost seems too easy. We just need to modify this line mail(TO, SUBJECT, MESSAGE); by replacing each of the bold capitalized words and adding this inside of PHP tags to our page. Replace TO with your email address in quotes. Replace SUBJECT with the subject you want to appear on the email inside of quotes. In an effort to keep it simple, replace MESSAGE with "{$_POST['visitor_name']} at {$_POST['visitor_email']} would like to subscribe to your mailing list." By now, the MESSAGE replacement is probably self-explanatory except for the curly braces. The curly braces just reassure PHP that the information inside of them really does refer to something it should already know (in this case what our visitor submitted).

    Now we just need to include our modified line in the HTML page. Here's the whole modified line (don't forget the PHP tags!):

    mail("MY EMAIL ADDRESS","Newsletter Subscription","{$_POST['visitor_name']} at {$_POST['visitor_email']} would like to subscribe to your mailing list.");

    If you're a really observant reader, you're already wondering how PHP knows to wait until someone's submitted a subscription request. Well, in the example above, it doesn't. It's also missing some kind of message to inform your subscriber that their request was successful. Since this is introductory material and already lengthy, I'll save that explanation for another article. Just follow everything you've learned above and use this line of code instead (I've bolded my special addition), substituting the success message for one of your own:

    if (isset($_POST['visitor_email'])) { mail("MY EMAIL ADDRESS","Newsletter Subscription","{$_POST['visitor_name']} at {$_POST['visitor_email']} would like to subscribe to your mailing list."); echo "Subscription Complete. Thank you!"; }

    Er, that's all folks! You'll start receiving emails which you can then add to a mail list in Thunderbird. To manage unsubscription requests, just have a little note at the end of your mailing list saying to reply to the email to be removed and then edit your mailing list.

    Jeremy Miller - Webmaster of Script Reference - The *NEW* PHP Reference & Tutorial Site For Non-Programmers

    In The News:


    pen paper and inkwell


    cat break through


    12 Essential Tips to a Professional Business Website

    1. Choose a big enough font size. A size 12... Read More

    Beautiful Web Sites Seldom Make More Sales

    Designing an E-commerce Web site is not as simple as... Read More

    Cost Effective and Powerful Dynamic Websites w. Fantastico Web Hosting

    If you are developing your website on a host that... Read More

    Things to Consider Before Starting a Website

    In the time that I have been using the Internet,... Read More

    You Need To Treat Your Website Like An Employee - Heres 5 Ways To Do It

    People often come to me in a state of crisis... Read More

    Why You Need A Web Site

    "I have a small business with just a couple of... Read More

    Remember This When Building A New Site - Beginners Guide

    I recently helped my mom to launch a website (www.mom2me.com)... Read More

    Web Site Promotion: How To Advertise Your Website For Profits

    Making money with your web site is the dream and... Read More

    Top 5 Webmaster Tools You Can Pick Up For Pennies

    1. SiteSpinner V2 - On Sale www.deprice.com/sitespinner.htmSiteSpinner is a user-friendly... Read More

    Dreamweaver 8 Preview

    August 8 2005, Macromedia announced a release of Studio 8.... Read More

    Build It and They Will Come

    Build it and they will come is not always true;... Read More

    Have You Got Your Ear To The Ground Or Your Head In The Sand?

    What happened on your website yesterday? What about last week... Read More

    Content Management ? The New Standard in Web Design

    The evolution of web development parallels the model of technology... Read More

    Find the Purpose of Your New / Proposed Website

    Absolutely everything stems from the purpose of your website -... Read More

    New Years Resolutions: Is Improving Your Website One of Them?

    With the New Year upon us yet again, it's time... Read More

    The Power Of CPanel

    cPanel is a control panel for your website and allows... Read More

    HTML Editors - How to Choose the Right One for Building Your Websites

    There are lots of HTML editors on the market, however,... Read More

    Disability Discrimination Act (DDA) & Web Accessibility

    There's been widespread speculation about the new legislation being introduced... Read More

    Nonsense! Why Do I Need a Website?

    "I don't sell anything online, I don't advertise online, in... Read More

    Using Mini Websites - Powerful Way to Direct Marketing

    Mini Websites are the most powerful and cost effective solution... Read More

    Maximizing ROI via Web Site Traffic Analysis

    We are clearly well past the innocent "golden age" of... Read More

    What Hosting Companies Dont Tell You, Could Hurt You?

    Did you know that hosting companies overcrowd their servers despite... Read More

    Make Your Own Website - General Website Design Tips

    Wow, we`ve already taken a domain and chosen a web... Read More

    Selling Your Site: Outsource or Homemade?

    To the starting internet entrepreneur, there is nothing more discouraging... Read More

    Make Your Communication Come Alive

    Design and layout can make your communication come alive and... Read More

    Ever Wondered What Challenges Other People With Their Web Site?

    Have you ever wondered what challenges are faced by other... Read More

    Bring Your Visitors Back Clamoring for More! Maintain and Improve Your Web Site Weekly - Part 1

    80% of your Web site is Maintenance!Once your Web site... Read More

    Server Side Includes (SSI) with ASP

    Server Side Includes (SSI) with ASP People often... Read More

    Ten Ways NOT to Set Up a Website-based Service Business

    1. As the first step, "Hire a web designer."First create... Read More

    7 Profit Producing Reasons Why Every Successful Service Professional Needs A Web Presence

    Your business website is a critical aspect of being able... Read More

    Running An Effective Website

    Running an effective website is a continuous process. I have... Read More

    Better Web Site ROI: Efficient Online Business with SEO, PPC, Split Testing, and Forums

    If you're looking for better web site ROI, chances are,... Read More

    Lead Generation How to -- 10 Tips On Generating More Internet Sales Leads

    Many millions of dollars are being wasted on promoting and... Read More