Killersites.com - Database driven websites: what are they and how are they built?

Database Driven Websites

What are Database Driven Websites, and how are they built?

Read this article in Portuguese or Spanish.

UPDATED: JUNE 2016

My new Interactive Web Developer course (released in 2016) teaches you how to create database driven websites and much more!

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 short and (hopefully) sweet article that will help people get a clearer understanding of what’s out there.

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 users 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. JavaScript is now ALSO being used on the server, with the engine called: Node.js
  3. Java / JSP
  4. Python
  5. Ruby
  6. ASP.NET - usually with the C# programming language

I will be writing about these technologies in future articles and newsletters. You now have them listed here for you to research on your own.

Learn about database.

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).

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

Client side (that is to say: in the browser) or what is called DOM scripting. DOM is short for Document Object Model. Back when I originally wrote this article, we used to call it 'DHTML', which is short for Dynamic HTML.

Dom scripting is basically using HTML and JavaScript 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.

You'll see examples of DOM scripting on most websites these days. It is now core to the web design and development process. So many of today's websites depend on it. In the old days, we would create fancy menus with DOM scripting (now you can do this with CSS3,) these days DOM scripting can be used to load parts of the web page automatically (called AJAX), say with the latest weather reports. Or you could use DOM scripting to create complex video games right in the web page. It's that powerful.

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.'

Conclusion:

Hopefully now you have basic conceptual understanding of dynamic web sites, DOM scripting 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.

Stefan Mischook.

Top
© 1996 - Killersites.com – All rights reserved