My Forthcoming E-Commerce Book, Rough Table of Contents

June 17, 2010

I am very pleased to say that I’ve just finished the rough draft of the Table of Contents for my forthcoming “E-Commerce with PHP and MySQL” book, to be published by New Riders Fall 2010. I’ve been wanting to do this book for some time (and was supposed to do it last year) and readers have been asking for it for even longer, so I’m really excited to get going on it finally.

Many generous readers have provided their ideas and feedback in a forum thread and an earlier blog post. I’ve taken all of those opinions, plus my own thoughts, to come up with this first draft. The content (in terms of what I’m going to write about) is maybe 90% settled and the order of the chapters is about that, too. Many of the specifics, especially when it comes to chapter and section headings will most likely change. Hopefully it should be clear from the table of contents what the intentions are, but just in case…

The book is broken down into four parts. In the first part, which is just two chapters long, I talk about the fundamentals that will apply to any e-commerce project you take on. This starts with planning, choosing a host, development tools, etc. Security as a theory gets its own chapter and security will be hammered in throughout the entire book. But that security chapter covers the bigger picture and some gritty details with respect to choices that have big impacts (such as hosting).

In the second part of the book, I’ll walk through a complete e-commerce project, from HTML and database design to user management to handling payments through PayPal. There are three points to this first example:

Understanding the basics in terms of design and the development process

Knowing how to perform user management and access control

Handling payments with a simple gateway like PayPal

This e-commerce project would be digital/virtual content. The specific example would be a subscription access to the site (like what ConsumerReports.org does) but it could also be PDFs that you sell or licenses for software or whatever. Anything that doesn’t have a limited quantity to be sold or that needs to be shipped. I’ll be using PayPal because it’s far and away the most common payment system, even if not everyone likes it. Google’s payment gateway would be comparable.

In the third part of the book, I’ll cover a second complete e-commerce project. This one will be a lot more complicated, with the focus on:

Creating a product catalog

Creating a shopping cart

A multi-step checkout process, including shipping

A credit card payment gateway

Order and catalog administration

This example wouldn’t specifically require user registration and logging in, but you could take the information taught in the second part to enable that feature here. I’ll try to make the thing being sold reasonably diverse (a range of products, not just a single thing).

The fourth part of the book will be add-ons and improvements. This is also the “if I have the space” section, which is to say that I’ll write about as much of this extra stuff as I have the available pages. I’ve organized these chapters in terms of most universally useful, starting with a search engine and then going into marketing. There’s a lot of possible topics in the marketing section, from SEO, to product recommendations and reviews, to analytics. Next up is a chapter on using Ajax to improve the user experience. There should be room for those three chapters in the printed edition of the book.

The final three chapters, in this rough table of contents, are definitely “if there’s space”. If not, I’ll write about them in this blog. Instead of offering entirely new concepts, the last three chapters would be alternative ways to do things you’ve already seen to that point: expanding the depth of the content, not its breadth. First up would be other gateways, as that’s a vital part of the process and there are many good options out there. Next would be a chapter on Object-Oriented Programming (OOP), in which I rewrite some of the book’s code using OOP. Many people really want to see OOP in the book, many absolutely don’t, so as a middle ground my theory is to add an OOP chapter that translates procedural code in an understandable way. The final chapter, which I’ll admit there probably won’t be room for, would present alternative database schemas for other kinds of e-commerce applications.

All that being said, here’s the current rough table of contents. I welcome all comments, questions, and thoughts!