Skip to content

Book review: Beginning PHP and MySQL: From Novice to Professional (Second Edition) by W. Jason Gilmore

I’ve been blogging for a little over a year now and if someone had have told me then that I’d eventually want to learn or understand anything about open source technology, I would most likely have said “Open source what?” As far as I was concerned, blogging was just about getting one’s words up on a screen so others in cyberspace could read them. Sounded pretty simple to me!

However, the more one wants to do, the more one needs to learn. It’s like real world publishing – if you want your book, or poster or pamphlet etc. to be more than black print on white paper, then obviously one needs to employ more sophisticated methods of publication. Apparently, I had reached that point with blogging and that meant embracing all sorts of things I’d previously associated with tech geeks.

I knew that PHP had something to do with getting up the information we see on webpages, but that was it. The book in question seemed like an excellent starting point for someone as clueless as me. It’s a pretty hefty volume at over nine hundred pages but is very well set out. There are two distinct sections – one for PHP, and the other for MySQL.

The first section is about PHP, an open source technology that is responsible for what appears on web pages, and in what manner. One need not go further than the Blogcritics homepage - if you go to where ‘Blogcritic of the Day’ is displayed, for example, you will notice that the name changes because the page file (a PHP file) is written in such a manner to allow for this information to be variable.

Gilmore spends twenty-one chapters thoroughly explaining how PHP can create dynamic web content, starting with a brief history of its development and installation instructions. It is a lot of information to go through, but the chapters are organised so that you can skip to the sections that suit you, though the author suggests this is an option better suited to intermediate or advanced users of PHP.

Before embarking upon the MySQL section, chapters 22 and 23 address some ‘bridging’ material. Chapter 22 discusses database servers and alternatives – specifically, a pared-down version of MySQL, referred to as SQLite, for the technologically timid.

Chapter 23 briefly introduces the reader to database extraction layer software and options for those wishing to use database software other than those that are usually employed, so that they know there is some choice, albeit limited. At this point things were admittedly starting to get confusing for me, but a clear diagram explains how all these elements are connected to get your webpage up and running. This helps to put everything in context.

Finally, we can tackle MySQL, a relational database server. There is extensive discussion on why MySQL has become so popular – it should be easy for those who have used other databases, its availability in several platforms, emphasis on speed as opposed to lots of features that generally go ignored but best of all, it’s free and easily accessible by download.

After this introduction, it is straight into installation and configuration, and licencing issues. Assuming that there have been no problems in this area, we are then introduced to some basic commands to get your fingers dirty in MySQL. From chapter 26, it begins to get complicated but still approachable for the novice – it covers local and remote connection to your server, clients and utilities that provide interfaces for the execution of server administration tasks, various connection options available.

Chapter 27 discusses MySQL storage engines and datatypes – what ones exist and what relational database table (storage engine) one can use to store and organise information. It also highlights key tasks in database management and navigation. What follows is security when accessing MySQL. In chapter 29 there is an excellent five-part checklist of essential tasks to be performed after installing and configuring MySQL. Provided you read through this section carefully, this should present no trouble.

Lastly, some useful things on PHP’s MySQL extension and suggestions on how to protect your information and connection. Most of this chapter is devoted to the various commands and processes one can choose to execute once a database is selected.

For a beginner like myself, chapters 24 to 29 are essential reading for MySQL basics. A brief glance through the remaining chapters (30 through 37) yields proof that there is further instruction on building upon these basics. It is highly recommended that those wanting to progress further master the basics or progress from chapter 30 onwards could get confusing.

From a non-technical point of view, I feel it necessary to mention a few things about the book generally. It is large, comprehensive, yet written in clear, concise English. It is well set out and there is an abundance of examples. When possible, the author always relates the technology discussed to its practical applications in the ‘real world’ by giving examples of who uses what, and for what purpose. Undoubtedly the author is committed to ensuring that others benefit from his knowledge, without being patronising. To my mind, computer and technical manuals are notoriously dry but this one manages to avoid that.

Each chapter has an introduction, and ends with a summary to further reinforce what topics were discussed. This book is excellent for the beginner, though those with more experience may find it more useful as a reference tool. This is most evident when one considers just how much time is devoted to the PHP section which is arguably more thorough than the MySQL section.

The material isn’t always easy to grasp at first reading, but W. Jason Gilmore certainly does his best to make sure that understanding is possible for many of the concepts he explains. It remains up to date as the book is currently in its second edition printing - the author having written more material for this purpose. I have no qualms recommending it to those who may find themselves as technologically challenged as myself.

This article first appeared on Blogcritics
at http://blogcritics.org/archives/2006/10/29/142327.php
viewable here. It also appears with permission on Literary Illusions at http://literaryillusions.com/LIreviews/2007/02/24/beginning-php-and-mysql-from-novice-to-professional-second-edition-by-w-jason-gilmore/, viewable here.

2 Comments

  1. A most descriptive and very helpful review. I stick to just LJ, but if I ever wanted to branch out into doing my own thing and being in control of it, this sounds like the place to start.

    Posted on 31-Oct-06 at 8:16 pm | Permalink
  2. I agree, VK.

    If it’s one thing I can’t stand about technical/instruction anything, it’s talking down to the person you’re supposed to be teaching, and this does not commit such evil. But it also makes you see just how much work goes into setting up a website!

    Oh, thanks for the heads-up re. ‘you know what’ :D

    Posted on 01-Nov-06 at 1:23 pm | Permalink

One Trackback/Pingback

  1. [...] In an effort to cease being nocturnal, I only got four or so hours of sleep. I woke up and heard my mother and brother talking so that was the end of sleep anyway. It appears that my mother woke up today and decided she was going to hate me for no good reason again. Groan, how dull. No matter, I got some good writing news. Someone from Apress Publishing (computer book publisher) actually bothered to use my contact form on my main blog to ask if they could use the review I did on one of their books. That was pretty exciting, I thought! They would like to quote it on the webpage for the book and possibly use it when they publish future editions of that same book (the review referred to is viewable here on my blog but also here on Blogcritics. They must’ve liked the review because even the actual author stopped by and thanked me for my review! Wicked! [...]

Post a Comment

You must be logged in to post a comment.