Database driven websites: what are they and how are they built?

July 5, 2006

When I was beginning web design and web programming years back, I remember all the confusing terms, technologies, and concepts that were floating around that just made it that much more difficult to wrap my head around the whole web thing.

With that in mind, I thought that it might be a good idea to write a few short and (hopefully) sweet articles that will help people get a clearer understanding of what’s out there and what can be done with it.

This article will attempt to demystify database driven web pages … also called ‘dynamic web pages’ or websites. Don’t worry, I am not going to go into any painful mega-geek details about how to create dynamic web pages, instead I will give a brief overview to help you understand:

  1. When you would need to build dynamic web sites.
  2. What tools you have available to build them.

WHAT ARE DYNAMIC WEB PAGES?

To understand dynamic web pages, you have to understand normal or in other words ‘static’ web pages.

Typical non-dynamic web pages do not change every time the page is loaded by the browser, nor do they change if a user clicks on a button. The only change that you will see in static web pages is to see them load and unload, like what happens when you click on a hyperlink.

In a nutshell:

static web pages (normal pages you build) always look the same and the content never changes unless you load a new page or you change the page yourself and upload the new version of the page to the web server.

Dynamic pages do the opposite, they can change every time they are loaded (without you having to make those changes) and they can change their content based on what user do, like clicking on some text or an image. (I am not talking about loading a new page!)

DATABASE DRIVEN WEB PAGES

One of the most common types of dynamic web pages is the database driven type. This means that you have a web page that grabs information from a database (the web page is connected to the database by programming,) and inserts that information into the web page each time it is loaded.

If the information stored in the database changes, the web page connected to the database will also change accordingly (and automatically,) without human intervention.

This is commonly seen on online banking sites where you can log in (by entering your user name and password) and check out your bank account balance. Your bank account information is stored in a database and has been connected to the web page with programming thus enabling you to see your banking information.

Imagine if the web page holding your banking information had to be built traditionally (that is by hand,) every time your bank balance changed! Even a thousand monkeys working 24/7 drinking 5 cups of coffee a day, would not be able to keep up!

Hopefully you are starting to see why you would want a database driven site: you would want it if your information changes very often, just like in a banking site.

Database driven sites can be built using several competing technologies, each with it’s own advantages. Some of those technologies/tools include:

  1. PHP
  2. JSP
  3. ASP
  4. PERL
  5. Cold Fusion

To continue …

Database driven web site programming can also be called (or characterized as): ‘server side programming’. The reason it is so called is because the ‘action’ or magic that allows the web pages to connect to the database is actually taking place on the server.

This is what happens:

each time a dynamic web page is about to be sent to the browser, the server automatically builds the page and sends a standard HTML page to the browser.

The server ‘knows’ how to build the page by following the instructions provided by the programmer. This is different from say JavaScript (think drop down menus or alert boxes) that runs strictly in the web browser.

At this point many people are getting very confused, the confusion lies in the difference between server side programming (database driven web pages) versus client side programming (JavaScript, AJAX).

CLIENT SIDE PROGRAMMMING: The other type of dynamic web page.

Client side (that is to say: in the browser) or what is commonly called DHTML … dynamic HTML.

DHTML is basically taking HTML and JavaScript (sometimes VB script) to make the web page change it’s own content (as far as the viewer is concerned) without having to reload or load a new page.

Examples of DHTML would include drop down menu’s, ‘floating’ images that hover over the rest of the page etc … if you look around, you will find plenty on the web.

Note: The name DHTML has been replaced by the term ‘DOM SCRIPTING’. It’s pretty much the same stuff (programming in the browser to make things happen dynamically,) but DHTML has a little bit of a bad wrap from the late 90’s, so more people now refer to it as ‘DOM scripting.’

Hopefully now you have basic conceptual understanding of dynamic web sites, DHTML and database driven web sites. I tried to present the information in a non-geek way so as to not confuse.

The downside of this simple approach is that I am not being 100% precise … some geeks out there may point out one or two items that are not dead on. But don’t worry, my points are not in any way wrong.

Suffice it to say that this was an introduction to the topic.

0 Responses

  1. Lucky Taylor Author May 12, 2007 at 9:26 pm

    This article is extremely helpful for my future projects. What benefits are there to create a dynamic blog? Using database info to change the contents that would be more relative or appealing to visitors from a particular country, state, city or something.

    Do dynamic pages have search engine optimization benefits?

    Thanks KillerPHP.com

  2. Stefan Mischook Author May 13, 2007 at 10:02 am

    Blogs by there very nature are dynamic web pages.

    Country specific content could be interesting to some users I suppose.

To Top