Creating Dynamic Website Content with PHP - MySQL

Fresh website content for your visitors can be of real benefit when attempting to generate repeat traffic. Most webmasters, however, just don't have enough spare time to frequently update or rebuild their pages manually. If your web site hosting company provides free access to PHP and MySQL, this article will show you how to combine those two open source tools and replace a portion of your websites' static content with frequently changing dynamic content.

Why do you need dynamic content for your website?

Static pages on a website eventually become "stale" and visitor traffic can fall significantly over time. The drop in traffic can be attributed to these primary factors:

1) The reluctance of search engines to include and display your potentially "out of date" pages in their search results,

2) The finite number of other subject related websites that would be willing to link to your information on a specific topic, and

3) Visitors that learn to view your static website with a "been there, done that" attitude.

Creating and maintaining a web site requires a significant investment in time and resources. Loosing repeat visitors diminishes the value of your investment. Without repeat traffic it is virtually impossible for a website to be a continuing success.

How can you add dynamic content without having to purchase expensive software?

One proven (and easy to implement) method of creating dynamic content for your website is by rotating information on key, higher traffic web pages using PHP with a MySQL database. Rotating content can take the form of a series of rotating articles, a rotating group of product listings, or even a simple "thought for the day". What is important is that your clients and visiting search engines find new and interesting information each time they visit your website.

As an example of dynamic content creation, we will build a system that rotates information about a group of products on the main page of a hypothetical retail sales web site that markets widgets. Our goal is to present information about a different type or model of widget available for purchase whenever a consumer visits the shopping web site.

Step One: Create a content table to hold your widget data.

There are a couple of options for storing the data to be displayed in your dynamic content rotation. The first option would be to create a new database, or perhaps simply add a table in an existing product database that will hold the information that you wish to display.

Let's take five theoretical widget products and design a table as follows:
+------+-----------------------+
| item | product |
+------+-----------------------+
| 1 | Plastic Widgets |
| 2 | Metal Widgets |
| 3 | Wooden Widgets |
| 4 | Rubber Widgets |
| 5 | Stone Widgets |
+------+-----------------------+

1-a) Create your table with the following SQL statement:

CREATE TABLE `content_table` ( `item` int(4) NOT NULL auto_increment, `product` varchar(10) NOT NULL default '', KEY `item` (`item`) ) TYPE=MyISAM AUTO_INCREMENT=6 ;

This table contains two fields. The first is an item number and the second is a description field that will hold the product name and features. Note: You can add fields to your actual table including: an image URL field, shopping cart direct purchase URL field, product page field, etc.

1-b) Insert the example data into your new table as follows:

INSERT INTO `content_table ` VALUES (1, ' Plastic Widgets');
INSERT INTO `content_table ` VALUES (2, ' Metal Widgets');
INSERT INTO `content_table ` VALUES (3, ' Wooden Widgets');
INSERT INTO `content_table ` VALUES (4, ' Rubber Widgets');
INSERT INTO `content_table ` VALUES (5, ' Stone Widgets');

Once you have completed these two steps you will have a table compete with data to be shown on your website.

Another option would be to utilize your existing product table. If there are hundreds of different models and styles of widgets already in one of the tables in your database, you could utilize the same structure we are learning now to connect directly to that table and display the already existing data.

Step two: Working with your new table:

For dynamic content displays to function there must be a mechanism in place that instructs your web page as to which item should be shown to the visitor. These mechanisms vary in complexity from extremely simple commands to the more complicated use of cookies or IP tracking to determine which item should be displayed.

For this tutorial, we will utilize one of the most effective mechanisms and perhaps the easiest to incorporate. This is the use of a random number generator for deciding which item will be shown.

To create a random number generator using PHP you must first calculate the total number of possible items that you want the system to choose from. In this example we had five items so the maximum number of choices will be 5. The reason we need this number is to limit the random numbers being delivered. If we have five items, we want the number generator to only give us a result of between 1 and 5.

We must now create a variable for our PHP code that will hold our new randomly generated item number as follows:

$mynumber = rand(1, 5);

This little snippet of code will act as the mechanism to "select" a widget product item at random from the five provided in the content table that we created.

If we created 100 different items for your dynamic display instead of just five, you would simply change the "rand (1, 5)" part of the code to reflect the different maximum number. In this case we would change it to "rand (1, 100)" so that the random number generator gives us back a number somewhere between one and one hundred.

We are now ready to extract the randomly selected item's information from your table so that it can be displayed on your webpage.

You can now connect to your database and query your table to find the data for the item that matches the random number you created, as follows:

$query_content = "SELECT * FROM content_table WHERE item = $mynumber ";

Step three: Displaying your data:

When displaying your data it is important to maintain consistency in presentation size. It is preferable to create a table of specified dimensions (such as "width=400") and display your results within this table. In this way the page proportions do not have to change with each new item (which can be very confusing for visitors).

Simply display the results just as if these where any other MySQL query using the echo command:

echo $query_content [' product '];

Every time your page is loaded a different widget product will be selected at random for display on that page.

What else can you do with your dynamic content?

The only limits are within your imagination. By adding a title and meta description tags to your content table, you can alternate the title and search engine description for that page. You can also utilize this system to promote affiliate programs or sponsorship opportunities by rotating affiliate links and banners.

The proper use of dynamic content can bring your website back into favor with search engines and encourage your visitors to return frequently to see what is new.

Don Beavers lives in Bryan/College Station, Texas and is an enterprise level PHP-MySQL programmer at both the Shopping Elf Shopping Guide, and the Datavor Web Directory.

In The News:


pen paper and inkwell


cat break through


Successful Web Development: 10 Key Elements

There are many elements that are key to successful web... Read More

What is Blogger.com?

In the late 1990's three San Francisco based web developers... Read More

How Worldly is Your World Wide Web?

The growth in Internet usage around the world is astounding... Read More

Enhance Your Website With A Yahoo-Style Directory

Does your website have a links/resources page?Do you exchange reciprocal... Read More

How Did You Get Here?

When marketing your website, it's important to know which of... Read More

Ten Quick Tests To Check Your Website For Accessibility

The Disability Discrimination Act says that websites must be made... Read More

Get to Know People through Websites

Web sites are not just places to sell things; they... Read More

The Evolution Of Search

There have been many significant changes to the face of... Read More

A Website Is Not Enough

Your ObjectiveYour small business needs an appealing and professional website... Read More

7 Golden Rules For Building Mini Sites

First, an eye opener. Making your fortune through affiliate programs... Read More

Improving Usability for Screen Reader Users

Simply ensuring your website is accessible to screen reader users... Read More

Make Your Own Website - General Website Design Tips

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

Ten Major Tips to Develop a Multilingual Web Site to Work

If you are living in a country that its native... Read More

Cost Effective and Powerful Dynamic Websites w. Fantastico Web Hosting

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

10 Things You Should Be Monitoring On Your Website

Every business needs to know how it is doing. That's... Read More

Seven Daft Things Not To Do To Your Website

1. Splash pagesMost of the time splash pages are uncalled... Read More

Give Your Business a Cash Infusion

Whether you have your own business already, or are looking... Read More

Frequent Business Question: How Do You Start a Web Business?

Today it seems everyone is jumping on the entrepreneur bandwagon,... Read More

How to Increase Sales with Automation Improvements

How popular is online shopping? And is there room for... Read More

Websites for Writers ? Why You Need One and How to Get Started Today

It may seem like the publishing industry's equivalent of Beanie... Read More

Build or Buy a CMS?

Creating a content management system either from scratch,... Read More

Why Every Small Business Owner Needs Two Websites

Every small business owner knows that they need a website,... Read More

7 Ways to Gain a Professional Online Reputation

A professional online reputation is essential to the flourishing of... Read More

Why Your Brick-and-Mortar Biz Needs A Website

The internet has taken over our lives with a vengeance,... Read More

Increase Your Affiliate Earnings with a Smart Webmaster Plan

Affiliate programs are a great way to earn an income... Read More

How to Maximize the Value of Every Visitor to Your Website

While most marketers are beginning to understand the critical importance... Read More

How to Get a Better Web Site ROI

Better Web Site ROIHow to increase your business profitability by... 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

A Web Site for Your Small Business: How to Set Up a Website

Your web site will be your window to the world.... Read More

Having a Domain Name And Web Site Gives Your Business The Key To The Door

Just like all things in life, the ways to run... Read More

Trinkets, Lockets And Empty Pockets

It never ceases to amaze me how many people set-up... Read More

You Don?t Have to be Amazon.com to Achieve 12% Conversion Rates!

That's right. According to a recent study by Nielsen/NetRatings, Amazon.com... Read More

Eight Deadly Web Site Mistakes and How to Avoid Them

Creating and maintaining an effective presence on the Web has... Read More