 | Level: Intermediate Duane O'Brien (d@duaneobrien.com), PHP developer, Freelance
13 Feb 2007 This "Create an interactive production wiki using PHP" series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity, and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for primetime, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users. In this tutorial
PHP is a popular language choice when developing Web applications. Binary and source versions are available, and while the binaries are Windows®-specific, the source can be complied for most common platforms. PHP is widely available at most third-party hosting companies. It's easy to learn, but at the same time, it's powerful, flexible, and capable. All of these things make PHP a good choice for writing a wiki engine. This tutorial focuses on application design. After you get your prerequisites out of the way, you'll get a picture for how the application is going to look, and jump into the database design and scaffolding parts. You're building the beginnings of your custom PHP wiki engine. But rather than refer to it as "your custom PHP wiki engine," you are going to have to give it an easy-to-remember name, such as Criki. Topics include: - What makes a wiki?
- Criki's architecture
- Database design
- Scaffolding
Prerequisites
It is assumed that you have some experience working with PHP and MySQL. We won't be doing a lot of deep database tuning, so as long as you know the basic ins and outs, you should be fine. You may find it helpful to download and install phpMyAdmin, a browser-based administration console for your MySQL database.
System requirements
Before you begin, you need to have an environment in which you can work. The general requirements are reasonably minimal:
- An HTTP server that supports sessions (and preferably mod_rewrite). This tutorial was written using Apache V1.3 with mod_rewrite enabled.
- PHP V4.3.2 or later (including PHP V5). This was written using PHP V5.0.4
- Any version of MySQL from the last few years will do. This was written using MySQL V4.1.15.
You'll also need a database and database user ready for your application to use. The tutorial will provide syntax for creating any necessary tables in MySQL. Additionally, to save time, we will be developing Criki using a PHP framework called CakePHP. Download CakePHP by visiting CakeForge.org and downloading the latest stable version. This tutorial was written using V1.1.13. For information about installing and configuring CakePHP, check out the tutorial series titled "Cook up Web sites fast with CakePHP."
Formats html, pdf
|  | |  |