CodeIgniter Lab

480 views
447 views

Published on

CodeIgniter Lab
http://leonguyen.com

Published in: Education, Technology, Design
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
480
On SlideShare
0
From Embeds
0
Number of Embeds
42
Actions
Shares
0
Downloads
62
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

CodeIgniter Lab

  1. 1. LeoNguyen.com
  2. 2. Outline - References (http://bit.ly/1fofKSV) - Lab 01: Introduction CodeIgniter 2.1.3 - Lab 02: HMVC - Lab 03: Grocery CRUD 1.3.3 - Lab 04: Eden Library 3.1 - Lab 05: Doctrine 2
  3. 3. Github https://github.com/leonguyen/CILab
  4. 4. Lab 01 Introduction to CodeIgniter
  5. 5. Outline - Download and config CI - Write a Hello world program
  6. 6. Exercise 1 Download and config CI
  7. 7. CodeIgniter
  8. 8. Task 1 - Download CI - Goto CI download site http://ellislab.com/codeigniter/user- guide/installation/downloads.html
  9. 9. Task 2 - Unzip CI - Unzip CI zip file.
  10. 10. Task 3 - Download & install Sublime Text - Goto Sublime Text download site http://www.sublimetext.com
  11. 11. Task 4 - Config autoload.php - Enter code: https://gist.github.com/leonguyen/5315988
  12. 12. Task 5 - Config config.php - Enter code: https://gist.github.com/leonguyen/5315997
  13. 13. Task 6 - Config database.php - Enter code: https://gist.github.com/leonguyen/5316010
  14. 14. Task 7 - Run CI - Enter the url http://localhost/cilab/ on the browser.
  15. 15. Task 8 - Userguide CI - Enter the url http://localhost/cilab/user_guide/ on the browser.
  16. 16. Exercise 2 Write a Hello world program
  17. 17. Task 1 - Create Helloworld controller - Copy Welcome controller, enter the following code then goto http: //localhost/cilab/index.php/helloworld
  18. 18. Task 2 - Create .htaccess - Create .htaccess in root source files then enter the following code: https://gist.github.com/leonguyen/5251416
  19. 19. Task 3 - Config config.php - Remove 'index.php' of 'index_page'. - Enter 'QUERY_STRING' of 'uri_protocol'.
  20. 20. Task 4 - Run again - Goto http://localhost/cilab/helloworld.
  21. 21. Lab 02 HMVC (Hierarchical Model View Controller)
  22. 22. HMVC
  23. 23. HMVC (cont) - Modularization: Reduction of dependencies between the disparate parts of the application. - Organization: Having a folder for each of the relevant triads makes for a lighter work load. - Reusability: By nature of the design it is easy to reuse nearly every piece of code. - Extendibility: Makes the application more extensible without sacrificing ease of maintenance.
  24. 24. Outline - Download and config HMVC modular. - Create sample 'Foo' modules.
  25. 25. Exercise 1 Download and config HMVC modular
  26. 26. Task 1: Download HMVC Modular - Goto https://bitbucket.org/wiredesignz and download "codeigniter- modular-extensions-hmvc"
  27. 27. Task 2: Copy 'MX' third_party - Copy 'MX' folder to 'third_party' folder of CI.
  28. 28. Task 3: Copy to 'application/core' - Copy 'MY_Loader.php' and 'MY_Router.php' to 'application/core'.
  29. 29. Exercise 2 Create sample 'Foo' modules
  30. 30. Task 1: Create 'modules' folder - Create 'modules' folder in 'application' and 'Foo' modules.
  31. 31. Task 2: Create 'Foo' controller - Create 'Foo' controller extends 'MX_Controller': https://gist.github.com/leonguyen/5326355
  32. 32. Task 3: Create 'Foo' controller - Create 'Foo' controller extends 'MX_Controller'.
  33. 33. Lab 03 Grocery CRUD
  34. 34. Intro - Grocery CRUD is a library that makes a developer's life easier. Just few lines of code and you can create a full stable CRUD with nice views. A totally automatic system that even a newbie in PHP can work with.
  35. 35. Task 1: Download - Go to www.grocerycrud.com
  36. 36. Task 2: Installation - Unzip 'grocery_CRUD.zip' and copy all files to your CI project.
  37. 37. Task 3: Installation - MySQL - Import 'examples_database.sql' to your project mysql.
  38. 38. Task 4: Run - Enter the url http://localhost/CILab/examples/ on the browser.
  39. 39. Lab 04 Eden Library
  40. 40. Intro - Eden is a PHP library designed for rapid prototyping, with less code. Yes, Really. - Eden simply a set of reusable components, that works with any PHP framework and CMS. Eden makes code logical and readable with dead simple syntax.
  41. 41. Task 1: Download - Go to www.eden-php.com
  42. 42. Task 2: Installation - Unzip 'eden.zip' and copy all files to 'libraries' folder of your CI project.
  43. 43. Task 3: Create example controller - Create 'edenhellow.php' controller and enter code: https://gist.github. com/leonguyen/5915315
  44. 44. Task 4: Run - Enter the url http://localhost/CILab/edenhello/ on the browser. Note: You have access to a server with at least PHP 5.3.x
  45. 45. Lab 05 Doctrine 2
  46. 46. Intro - Doctrine is a very powerful ORM in php and it is possible to easily integrate and use doctrine with codeigniter as ORM
  47. 47. Task 1: Download - Go to github.com/doctrine and download + ORM: github.com/doctrine/doctrine2 + Common: github.com/doctrine/common + DBAL: github.com/doctrine/dbal and Cache, Annotations, Lexer
  48. 48. Task 2: Create Doctrine folder - Create ‘Doctrine’ folder into ‘application/libraries’ and put its files.
  49. 49. Task 3: Create Doctrine bootstrap - Create ‘Doctrine.php’ into ‘application/libraries’ folder. - Enter code: https://gist.github.com/leonguyen/6696118
  50. 50. Task 4: Load Doctrine - Modify the ‘autoload.php’
  51. 51. Task 5: Create YAML mapping files - Enter code: https://gist.github.com/leonguyen/6701457 https://gist.github.com/leonguyen/6701498
  52. 52. Task 6: Command Line Tool - Create ‘doctrine-cli.php’ into ‘application’ folder. - Enter code: https://gist.github.com/leonguyen/6700705
  53. 53. Task 7: Setup Entities, Proxies, and DB Schema - List of commands: php doctrine-cli.php (See: youtu.be/yFH5JcH-RtM) - Entity classes: php doctrine-cli.php orm:generate-entities models (See: youtu.be/nEMfBno40vE) - Proxy classes: php doctrine-cli.php orm:generate-proxies (See: youtu.be/v4J_cI5CJe0) - Drop tables: php doctrine-cli.php orm:schema-tool:drop --force (See: youtu.be/lhGWsFmCeoc) - Create tables: php doctrine-cli.php orm:schema-tool:create (See: youtu.be/MhLAi4f_mg4)

×