Yii Rapid Application Development Hotshot


Yii Rapid Application Development Hotshot
eBook: $29.99
Formats: PDF, PacktLib, ePub and Mobi formats
$25.49
save 15%!
Print + free eBook + free PacktLib access to the book: $79.98    Print cover: $49.99
$49.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Reviews
Support
Sample Chapters
  • A series of projects to help you learn Yii and Rapid Application Development
  • Learn how to build and incorporate key web technologies
  • Use as a cookbook to look up key concepts, or work on the projects from start to finish for a complete web application

Book Details

Language : English
Paperback : 340 pages [ 235mm x 191mm ]
Release Date : December 2012
ISBN : 1849517509
ISBN 13 : 9781849517508
Author(s) : Lauren J. O'Meara, James R. Hamilton III
Topics and Technologies : All Books, Web Development, Open Source, PHP, Web Development

Table of Contents

Preface
Project One: Develop a Comic Book Database
Project Two: Turn That DB into a Personal Mobile App
Project Three: Access All Areas – Users and Logins
Project Four: Level Up! Permission Levels
Project Five: Service Please – Integrating Service Data
Project Six: It's All a Game
Project Seven: Let It Work While You Sleep – Reports and Job Queues
Project Eight: Extend Yourself – Make a Module for Reuse
Index
  • Project One: Develop a Comic Book Database
    • Mission Briefing
    • Setting up the LAMP Stack in One Step with XAMPP
    • Installing NetBeans IDE
    • Adding Xdebug to the Tool Set
    • Unpacking the Yii Framework
    • Initializing the Application Database
    • Generating an Application Scaffold
    • Beginning to Customize the App
    • Getting Familiar with NetBeans and PHPUnit Testing Tools
    • Mission Accomplished
    • You Ready to go Gung HO? A Hotshot Challenge
    • Project Two: Turn That DB into a Personal Mobile App
      • Mission Briefing
      • Setting Up Your Mobile Device
      • Detecting Mobile Browser
      • Creating a Mobile View
      • Finishing Touches for the Mobile View
      • Detecting Mobile Browser – The Real Deal
      • Adding Issue Number to the Book Object
      • Relationship Therapy
      • Creating a Mobile View Widget
      • Mission Accomplished
      • You Ready to go Gung HO? A Hotshot Challenge
      • Project Three: Access All Areas – Users and Logins
        • Mission Briefing
        • Adding a User Object with CRUD
        • Making a User Management Interface
        • Storing Passwords
        • Activating Database User Login
        • Enforcing Secure Passwords
        • Adding User Functions – Wishlist
        • Configuring User Access
        • User Specific Menus
        • Mission Accomplished
        • You Ready to go Gung HO? A Hotshot Challenge
        • Project Four: Level Up! Permission Levels
          • Mission Briefing
          • Adding Admin Function – Library Management
          • Adding User Functions – Library
          • Defining Roles and Access
          • Adding the RBAC Extension
          • Adding Roles to User Management
          • Fine-tuning Permissions
          • Making History
          • Mission Accomplished
          • You Ready to go Gung HO? A Hotshot Challenge
          • Project Five: Service Please – Integrating Service Data
            • Mission Briefing
            • Google Me – Getting Started
            • Google Me – Putting the Rubber to the Road
            • Google Me – The Yii Way
            • Integrating with Comic Vine – The Search, Part 1
            • Integrating with Comic Vine – The Search, Part 2
            • Integrating with Comic Vine – The Details
            • Putting It All Together
            • Mission Accomplished
            • You Ready to go Gung HO? A Hotshot Challenge
            • Project Six: It's All a Game
              • Mission Briefing
              • Updating the Database and Running Gii for Hangman
              • Creating a JSON Endpoint for Hangman
              • Developing the Controller – Creating the DB Entry
              • Developing the Controller – Making the Rules
              • Developing the View
              • Improving the View
              • Authorized Entry Only
              • Reusing Code – Making a New Game
              • Mission Accomplished
              • You Ready to go Gung HO? A Hotshot Challenge
              • Project Seven: Let It Work While You Sleep – Reports and Job Queues
                • Mission Briefing
                • Reorganizing Menu Items
                • Scaffolding the Job Objects
                • Adding Job Registration
                • Adding Job Scheduling
                • Adding Job Processing
                • Creating and Registering a Job
                • Creating a Graphical Report
                • Displaying Graphical Report Output
                • Mission Accomplished
                • You Ready to go Gung HO? A Hotshot Challenge
                • Project Eight: Extend Yourself – Make a Module for Reuse
                  • Mission Briefing
                  • Selecting Code for Reuse
                  • Preparing Your Module Framework
                  • Moving Your Module Files
                  • Writing a Migration Script
                  • Re-incorporating Your Module
                  • Testing Your Module
                  • Submitting Your Module
                  • Mission Accomplished
                  • You Ready to go Gung HO? A Hotshot Challenge

                  Lauren J. O'Meara

                  Lauren J. O'Meara was lured into the field of computing from being a Mathematics major when she took Jeff Ondich's CS117 Computer Science course at Carleton College in Northfield Minnesota. After completing her degree in Computer Science, she wrote computer security software on both coasts of the US, at the MITRE corporation, and then at OneSecure (later acquired by NetScreen, and then by Juniper Networks). After spending some time gaining a broader understanding of business in the Santa Clara University MBA program, she flung herself into the world of web application development. Today her web and mobile development consulting company, Plum Flower Software, is based out of Music City, USA.

                  James R. Hamilton III

                  James Hamilton has been developing software professionally for 15 years, and is a founding partner of Plum Flower Software, a company that specializes in web and mobile development. He lives in a house full of Linux boxes and cats in Franklin, Tennessee.

                  Code Downloads

                  Download the code and support files for this book.


                  Submit Errata

                  Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


                  Errata

                  - 6 submitted: last submission 30 Jun 2014

                  Errata type: Code | Page number: 64

                  In step 5, the method isNewRecord() should be isNewRecord, that is without the parenthesis.
                  5. Make an addAuthor() function in the book model.

                  public function addAuthor($author) {
                  if ($author->isNewRecord()) {

                  Should be: 5. Make an addAuthor() function in the book model.

                  public function addAuthor($author) {
                  if ($author->isNewRecord) {

                   

                   

                  Errata type: Others | Page number: 13

                  In newer versions of NetBeans IDE, a new configuration option has been added for PHP unit testing. This is due to changes in phpunit. Step 12 shall read:
                  12. Configure NetBeans to use PHPUnit. Open Tools | Options | PHP | Unit Testing and set the correct path for PHPUnit script: /opt/lampp/bin/phpunit , and Skeleton Generator script: /opt/lampp/bin/phpunit-skelgen.

                   

                  Errata type: Technical | Page number: 67

                  "if(Yii:app()->request->isAjaxRequest())" should be "if(Yii:app()->request->isAjaxRequest)"

                  Errata type: Code | Page Number: 11

                  "sudo update-rc.d lamp defaults"

                  should be replaced with

                  "sudo update-rc.d lampp defaults"

                  Errata type: Code | Page Number: 95

                   protected function beforeSave()
                    {
                      if (parent::beforeSave())
                        $this->pwd_hash = $this->hash($this->password);
                      return true;
                    }
                    return false;
                  }

                  should be

                  protected function beforeSave()
                  {
                      if (parent::beforeSave()) {
                          $this->pwd_hash = $this->hash($this->password);
                          return true;
                       }
                       return false;
                  }

                  Errata Type: Code | Page Number: 53

                  $this->widget('zii.widgets.CMenu', array(
                  'items'=>$this->menu,
                  'htmlOptions'=> $htmlOptions,
                  ));
                  $this->endWidget();

                  should be

                  $this->widget('zii.widgets.CMenu', array(
                  'items'=>$this->menu,
                  'htmlOptions'=> $htmlOptions,
                  ));

                  Sample chapters

                  You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                  Frequently bought together

                  Yii Rapid Application Development Hotshot +    Away3D 3.6 Cookbook =
                  50% Off
                  the second eBook
                  Price for both: ₨388.00

                  Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                  What you will learn from this book

                  • Catapult your application into existence with Yii's scaffolding capabilities
                  • Mobilize your web application with Yii and jQuery Mobile
                  • Lock down areas of your application with access control
                  • Manage users and permission levels
                  • Incorporate Software as a Service into your application
                  • Gamify your data
                  • Mine your information with data query jobs and reporting
                  • Reuse your work as Yii modules

                  In Detail

                  Yii is a high performance PHP framework for rapid web application development. It is well designed, well supported, easy to learn, and easy to maintain. If you are beginning to learn web development or are a seasoned programmer with demanding clients, learning Yii will benefit your projects and career.

                  Yii Rapid Application Development Hotshot will guide you through a series of projects covering a variety of web development hot topics to build a complete application. You will explore key features of a web application as implemented in Yii and experience the power of rapid application development.

                  Supercharge your projects and your programming ability by becoming a Yii Rapid Application Development Hotshot. Start with the topics that grab your attention or work through each project in sequence. At the end of each project, you will have a working application, a better understanding of Yii, and a new web development skill under your belt.

                  Integrate with Google API. Gamify your data. Share your functionality as a service. Mobilize your app. Mine and report on your information. Have fun and produce results!

                  Approach

                  Practical, real world example projects. Start with the topics that grab your attention or work through each project in sequence.

                  Who this book is for

                  This book is for intermediate to advanced level PHP programmers who want to master Yii.

                  Code Download and Errata
                  Packt Anytime, Anywhere
                  Register Books
                  Print Upgrades
                  eBook Downloads
                  Video Support
                  Contact Us
                  Awards Voting Nominations Previous Winners
                  Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                  Resources
                  Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software