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:

  1. Understanding the basics in terms of design and the development process
  2. Knowing how to perform user management and access control
  3. 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!

  • Introduction
  • ———————

    Part 1: Fundamentals

  • Chapter 1: Getting Started
    • Identifying Your Business Goals
    • Legal/Business Issues
    • Choosing Web Technologies
    • Getting a Host
    • Development Tools
    • The Development Process
  • Chapter 2: Security Fundamentals
    • Hosting Implications
    • Payment Considerations
    • Secure Transactions
    • Protecting Information
  • ———————

    Part 2: The Digital Content Example (Rename)

  • Chapter 3: Site Structure and Design
    • HTML
    • Server Organization
    • Database Design
  • Chapter 4: Handling Payments with PayPal
  • Chapter 5: User Management
    • Registration
    • Login
    • Access Control
    • Updating Accounts
  • ———————

    Part 3: The Physical Content Example (Rename)

  • Chapter 6: Site Structure and Design 2
    • HTML
    • Server Organization
    • Database Design
  • Chapter 7: Creating a Catalog
    • Browsing by category
    • Highlighting new products
    • Creating Sales and Discounts
  • Chapter 8: Starting Orders
    • Creating a Shopping Cart
    • Shopping Cart Managment
    • Shipping
    • Finalizing Purchases
  • Chapter 9: Checking Out
    • Credit Card Payment Gateway
    • Storing Orders
    • Email Status/Receipts
    • Checking Order Status Online
  • Chapter 10: Administration
    • Authentication
    • Stock Management
    • Reports/Graphs
  • ———————

    Part 4: Extra Touches

  • Chapter 11: Building a Search Engine
  • Chapter 12: Marketing
    • Search Engine Optimization
    • Adding Ads
    • Product Recommendations
    • Notify when product is available
    • Reviews
    • Newsletters
    • Customer Help
    • Tracking referrers/Analytics
  • Chapter 13: Adding Ajax
    • cart management in sidebar
    • comments/reviews
    • ratings
    • purchasing
  • Chapter 14: Alternative Gateways
  • Chapter 15: Using OOP
  • Chapter 16: Alternative Database Schemas