PHP5 CMS framework development expert insight and practical guidance to creating an efficient, flexible and robust framework for a PHP5-based content management system - Brampton, Martin (Packt Pub., 2008)
Title from title screen. - Includes index
Cover -- Table of Contents -- Preface -- Chapter 1: CMS Architecture -- The Idea of a CMS -- Critical CMS Features -- Desirable CMS Features -- System Management -- Technology for CMS Building -- Leveraging PHP5 -- Some PHP Policies -- Classes and Objects -- Objects, Patterns, and Refactoring -- The Object-Relational Compromise -- Basics of Combining PHP and XHTML -- Model, View, and Controller -- The CMS Environment -- Hosting the CMS -- Basic Browser Matters -- Security of a CMS -- Some CMS Terminology -- Summary -- Chapter 2: Administrators, Users, and Guests -- The Problem -- Discussion and Considerations -- Who Needs Users? -- Secure Authentication -- Secure Storage of Passwords -- Blocking SQL Injection -- Login -- Managing User Data -- User Self Service -- Customizing for Users -- Extended User Information -- Framework Solution -- The User Database Table -- Indexes on Users -- Keeping User Tables in Step -- Achieving Login -- Administering Users -- Generating Passwords --
- Replacing a User View -- Extending a User View -- Summary -- Chapter 3: Organizing Code -- The Problem -- Discussion and Considerations -- Security -- Methods of Code Inclusion -- Practicality in Coding -- Framework Solution -- Autoloading -- The Smart Class Mapper -- Digression on the Singleton Pattern -- Finding a Path to the Class -- Populating the Dynamic Class Map -- Saving Map Elements -- Summary -- Chapter 4: Sessions and Users -- The Problem -- Discussion and Considerations -- Why Sessions? -- How Sessions Work -- Avoiding Session Vulnerabilities -- Search Engine Bots -- Session Data and Scalability -- Framework Solution -- Building a Session Handler -- Session Data -- Summary -- Chapter 5: Database and Data Objects -- The Problem -- Discussion and Considerations -- Database Dependency -- Ease of Development -- Keeping up with Change -- Database Security -- Pragmatic Error Handling -- Framework Solution -- Class Structure -- Handling Databases Easily --
- Database Extended Services -- Data Objects -- Database Maintenance Utility -- Summary -- Chapter 6: Access Control -- The Problem -- Discussion and Considerations -- Adding Hierarchy -- Adding Constraints -- Avoiding Unnecessary Restrictions -- Some Special Roles -- Implementation Efficiency -- Where are the Real Difficulties? -- Framework Solution -- Database for RBAC -- Administering RBAC -- The General RBAC Cache -- Asking RBAC Questions -- Summary -- Chapter 7: Handling Extensions -- The Problem -- Discussion and Considerations -- An Extension Ecosystem -- More on Extensions -- Extension Parameters -- Framework Solution -- Packaging Extensions -- Module Interface and Structure -- The Logic of Module Activation -- Component Interface and Structure -- Plugin Interface and Structure -- Invoking Plugins -- Installing and Managing Extensions -- Summary -- Chapter 8: Caches and Handlers -- The Problem -- Discussion and Considerations -- Building Information Handlers --
- The Singleton Cache -- The XHTML Cache --T$13864