Before you start
11 Jan 2013 - Editor's note: This series was originally published in 2006, and has undergone several revisions since to keep up with ongoing developments on CakePHP. This revision was written for CakePHP 2.1.1.
This "Cook up websites fast with CakePHP" series is designed for PHP application developers who want to start using CakePHP to make their lives easier. In the end, you will have learned how to install and configure CakePHP, the basics of Model-View-Controller (MVC) design, how to validate user data in CakePHP, how to use CakePHP helpers, and how to get an application up and running quickly using CakePHP. It might sound like a lot to learn, but don't worry—CakePHP does most of it for you.
- Part 1 focuses on getting CakePHP up and running, and the basics of how to put together a simple application allowing users to register for an account and log in to the application.
- Part 2 demonstrates how to use scaffolding and Bake to get a jump start on your application, and how to use CakePHP's access control lists (ACLs).
- Part 3 shows how to use Sanitize, a handy CakePHP class, which helps secure an application by cleaning up user-submitted data. Part 3 also covers the CakePHP Security component, handling invalid requests and other advanced request authentication.
- Part 4 focuses primarily on the Session component of CakePHP, demonstrating three ways to save session data, as well as the Request Handler component to help you manage multiple types of requests (mobile browsers, requests containing XML or HTML, and so on).
- Part 5 deals with caching, specifically view and layout caching, which can help reduce server resource consumption and speed up your application.
This tutorial shows how to get started using CakePHP. You'll go through the installation process, then get down and dirty by writing the user registration code. Through it all, you'll see how much time you could have saved had you been using CakePHP all along. This part of the tutorial builds the online product application, Tor, which includes a "request dealership username and password" page and a login page.
CakePHP topics include:
- MVC design
- Helpers
- CakePHP data validation
It is assumed that you are familiar with PHP, have a fundamental grasp of database design, and are comfortable getting your hands dirty. A full grasp of the MVC design pattern is not necessary, as the fundamentals will be covered during this tutorial. More than anything, you should be eager to learn, ready to jump in, and anxious to speed up your development time.
Before you begin, you need to have an environment in which you can work. CakePHP has reasonably minimal server requirements:
- An HTTP server that supports sessions (and preferably
mod_rewrite). This tutorial was written using Apache 2.2.21 withmod_rewriteenabled. - PHP 5.2.8 or later (including PHP V5). This tutorial was written using PHP V5.3.8.
- A supported database engine. This tutorial was written using MySQL 5.5.23.
You'll also need a database ready for your application to use. The tutorial will provide syntax for creating any necessary tables in MySQL.
The simplest way to download CakePHP is to visit CakePHP.org and download the latest stable version from the Get products and technologies section of Resources. This tutorial was written using 2.1.1.




