If you want an interactive database-based web site without spending hours and hours wading through dozens of books to figure out how to do it, then you will want "Open Source Web Development with LAMP". The book starts with the very basics and proceeds step by step so you can get your web site up as quickly as possible and with a minimum of problems. So what exactly is LAMP? It stands for the four components of a LAMP server - Linux operating system, Apache web server, MySQL database server, and the Perl programming language.
The book is divided into four distinct parts and organized in an unexpected way. Instead of giving each part of LAMP its own section the four sections focus on structure (getting them all up and working together), static web pages (creating and using them), dynamic web pages (getting the pages to do something via Perl and MySQL), and embedded programs (to make the whole system run quicker). Each section covers all the components of LAMP as applied to that section. For example, the structural section examines installation, configuration, security, and basic usage of Linux, Apache, MySQL, and Perl. For Perl it includes a discussion of variables, arrays, operators, flow-control, regular expressions, functions, and file input/output. For MySQL it includes working with tables, insert, select, update, and similar basic commands. This is a very well done section and gives all the basic information necessary to get each of the components up and working with each other. The section on static web pages mainly covers the use of Website META Language (WML) to generate a consistent look and feel across all the web pages on the server. The part on dynamic web pages covers CGI and mod-perl so you can process information submitted by an html page or other CGI script. It also includes information on using Perl to access the MySQL server and generate dynamic information. The final section examines embedded programs such as Server Side Includes (SSI), embedded Perl, MASON, and PHP and how they are used to make a faster dynamic web site.
I have to say that I really liked this structure. Once a system is set up it is rare to have to refer to the installation information again. If it were organized by Linux, Apache, MySQL and Perl then I would have to flip to what I assume is the appropriate section turn past the installation portion and try to locate what I am looking for. This way, since it is organized by the various stages of getting the system up and running it is easier to find what I want.
The text includes lots of example coding so you can actually write and test it right away. This is a great way to learn the basics. It is not a thorough course in any of the four components but it does give you enough of a background to do most of what you might need to do. Of course, what makes it really valuable is the fact that it covers how to get each of the components to work together without problems. There are good books on each of these components but it is rare to find one that focuses on the interrelationships between them. "Open Source Web Development with LAMP" is highly recommended for anyone who wants to set up a LAMP server or needing to work with one.