The last component we need to build is something that will transfer the data from the database out to a web page. There are two popular methods of getting the data in your database out into a web page. The first method is to have a dynamic script that passes parameters via GET or POST methods. The script queries the database using the parameters and returns the appropriate page to the requesting browser. Though this can be a programmatically elegant solution, it has a number of problems.
The first problem is that losing information in your database or losing database connectivity will prevent your visitors from accessing your website. This adds an important point of failure to your website infrastructure. Another important consideration is that this approach will require a significant amount of processing power as your website grows. For many situations this will not be an issue, but if you expect your website to grow significantly, server load is something you'll want to watch out for. Also, if you're not careful about the way you pass your parameters, you may also have trouble getting all search engines to crawl your website properly. Finally, this on-the-fly computation and database connection will increase the lag your visitors will experience. As you can see this solution presents many challenges, but it does have one significant advantage.
The major advantage to generating web pages one the fly is that any updates you make to your database will be immediately reflected on your website. As we'll discuss shortly, the significance of this advantage will vary depending on your application.