Contents
- Chapter 1: Welcome to the MVC World Introduction xv
- Chapter 2: Agile Methodologies and Approaches
- Chapter 3: A 10,000-Foot View of CodeIgniter
- Chapter 4: Creating the Main Web Site
- Chapter 5: Building a Shopping Cart
- Chapter 6: Creating a Dashboard
- Chapter 7: Improving the Dashboard
- Chapter 8: Last-Minute Upgrades
- Chapter 9: Security and Performance
- Chapter 10: Launch
- Index
- Chapter 1: Welcome to the MVC World Introduction xv
- What’s Model-View-Controller?
- Why Bother with MVC?
- A Brief History of MVC
- Comparing PHP MVC Frameworks
- Making Life Easier for the Developer
- Models
- Views
- Helpers and Libraries
- Revisiting the Opening Example
- First Things First: The Model
- Creating the Controller
- Creating the View
- A Slightly Different Approach: Templates
- Modifying the Controller
- Modifying the View
- What about {bodycopy}?
- Conclusion
- Chapter 2: Agile Methodologies and Approaches
- What Is Agile?
- Post-Agilism
- Notable Agile Methodologies
- Scrum
- XP
- Modifying Scrum and XP
- Gather Your Requirements While You May
- The First Day
- Assimilating What You’ve Learned
- The Second Day
- Revisiting the Product Backlog
- Creating a Sprint Backlog
- Conclusion
- Chapter 3: A 10,000-Foot View of CodeIgniter x
- Downloading CodeIgniter
- CodeIgniter at a Glance
- The system/Folder
- The system/application Folder
- Initial Configuration
- config.php
- database.php
- autoload.php
- routes.php
- CodeIgniter Libraries
- The Database Library
- The Session Library
- CodeIgniter Helpers
- The Form Helper
- The URL Helper
- Creating Models, Views, and Controllers
- Models and Database Tables
- Controllers
- Views
- Uploading Your Files
- Conclusion
- Chapter 4: Creating the Main Web Site
- Displaying the Home Page
- Retrieving the Main Featured Product
- Retrieving Random Products for the Sidebar
- Using the New Model Functions on the Home Page
- Creating the Home Page View
- Displaying Product Categories
- Creating New Model Functions
- Building out the cat() Controller Function
- Creating the Category View
- Displaying Product Details
- Updating the MProducts Model
- Building the product() Controller Function
- Creating the Product View
- Displaying Search Results
- What about the Shopping Cart?
- Revisiting the Sprint Backlog
- Conclusion
- Chapter 5: Building a Shopping Cart xi
- Displaying the Shopping Cart
- First Things First
- Adding Products to a Shopping Cart
- Adding the View Cart Link to the Navigation
- Displaying the Shopping Cart to the User
- Adding a Delete Function to the Shopping Cart
- Revisiting the Sprint Backlog
- Meeting with Claudia
- Polishing the Look and Feel
- Uploading the Logo
- Updating the CSS
- Fixing the Header
- Fixing the Side Navigation
- Placing the Add to Cart Links
- Cleaning up Thumbnail and Text Positioning
- Conclusion
- Chapter 6: Creating a Dashboard
- Gathering Requirements
- Creating a Sprint Backlog
- Creating a Rudimentary Admin Framework
- Using Folders to Organize Controllers
- Creating the Login Mechanism
- Creating the Home Page of the Admin Panel
- Creating the Category Management Tools
- Creating the Product Management Tools
- Creating the User Management Tools
- Revisiting the Sprint Backlog
- Conclusion
- Chapter 7: Improving the Dashboard
- Batch Mode Operations
- Importing and Exporting
- Creating an Export Function for Categories
- Creating an Export Function for Products
- Importing a CSV Import Library for Products
- The Client Review
- Reassigning Products from Deleted Categories
- Reworking Colors and Sizes for Products xii
- Creating New Database Tables
- Deleting References to Legacy Colors and Sizes
- Creating New Models
- Creating Admin Screens for Colors
- Creating Admin Screens for Sizes
- Adding Color and Size Checkboxes to Products
- Displaying Color and Size Information on Public Pages
- Revisiting the Sprint Backlog
- Conclusion
- Chapter 8: Last-Minute Upgrades
- Meeting with the Client
- Creating a Page Manager
- Creating the Database Table
- Creating the Model
- Creating the Admin/Pages Controller
- Creating the Administrative Views
- Choosing and Integrating a WYSIWYG Editor
- Updating the Welcome Controller
- Creating a Newsletter Tool
- Creating the Database Table and Model
- Adding a subscribe() Function
- Creating the Form
- Creating Administrative Screens
- Meeting with the Client
- Conclusion
- Chapter 9: Security and Performance
- Security
- Filtering User Input
- Encrypting Sessions
- Additional Security Resources
- Performance
- Profiling
- Benchmarking
- Conclusion