PacktLib: Web Application Development with Yii and PHP

Web Application Development with Yii and PHP

Credits

About the Author

About the Reviewers

www.PacktPub.com

Preface

Meet Yii

Easy

Efficient

Extensible

MVC architecture

Stitching these together: Yii request routing

Object-relational mapping and Active Record

The view and controller

Summary

Getting Started

Installing Yii

Creating a new application

"Hello, World!"

Adding dynamic content

Linking pages together

Summary

The TrackStar Application

Introducing TrackStar

Creating user stories

Navigation and page flow

Data relationships

Creating the new application

Connecting to the database

Testing the database connection

Summary

Project CRUD

Feature planning

Creating the project table

Creating the AR model class

Enabling CRUD operations for projects

Summary

Managing Issues

Feature planning

Designing the schema

Building objects and their relationships

Creating active record model classes

Creating the issue CRUD operations

Using the issue CRUD operations

Fixing the owner and requester fields

The rest of the CRUD

Final tweaks

Summary

User Management and Authentication

Feature planning

User CRUD

Authenticating users using the database

Summary

User Access Control

Feature planning

Access control filter

Role based access control

Checking authorization level

Summary

Adding User Comments

Feature planning

Creating the model

Creating the comment CRUD

Altering the scaffolding to meet our requirements

Creating a recent comments widget

Summary

Adding an RSS Web Feed

Feature planning

A little background–content syndication, RSS, and Zend Framework

Installing Zend Framework

Using Zend_Feed

Creating user-friendly URLs

Adding the feed links

Summary

Making It Look Good

Feature planning

Designing with layouts

Deconstructing the main.php layout file

Nesting the layouts

Creating themes

Translating the site to other languages

Summary

Using Yii Modules

Feature planning

Working with modules

Restricting admin access

Adding a system-wide message

Summary

Production Readiness

Feature planning

Logging

Handling errors

Caching

General performance tuning tips

Summary

Index