Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
Learn Codeigniter - the most popular PHP Framework! In this course you will build a complete application in the CodeIgniter Framework from the ground up. You'll learn how the MVC pattern works as I take you step-by-step through everything needed get fluent in CodeIgniter.
Some features in our application will be a personalized dashboard for any user who registers and logs in. We'll have AJAX publishing for all of our Todo Lists and Note's.
You'll understand how to expand upon these features when we are complete.
|Section 1: Setting Up|
|Learn how the MVC pattern works within a few minutes with a diagram and code samples.|
|We will install Code Igniter, it's literally drag and drop into your PHP Directory. Note: This series assumes you know how to run PHP files in the directory you are using.|
|A brief run-through of my favorite IDE Netbeans, its up to you if you want to use this IDE. Otherwise use your favorite one.|
|We will use mod_rewrite so we have nice URLs.|
|Section 2: Project: Creating The First Sections|
|Here we download the necessary files and organize our content. We then setup some default include files to use later.|
|We will now create our first controller!|
|We will create our first view and we begin with the Home view which is attached to the controller.|
|Next we prepare our dashboard controller, similar to the Home controller but with an extra method.|
|We'll differentiate the Dashboard page with some bootstrap elements and prepare a wireframe for content further along the road.|
Chapter 2 Quiz
|Section 3: Project: Creating our first Model|
|We'll create the Schema in Heidi SQL. If you are on a Mac you can use SequelPro or a similar alternative.|
|Walk through setting up the database configuration, using Active Record to make queries while referencing the Docs.|
|We'll go through the stages of creating a User model that we'll use later.|
|This is a helpful little tool you will want to know about in the future!|
|Section 4: Project: Logging a User In|
|Learn the difference between PHP $_SESSION and Code Igniters Sessions. This is optional, but I suggest using it unless you must pass large amounts of data through a session.|
|We are going to make the login work with a series of things: The Input Class (Optional), The Session Class, Adjusting the User Model, and adding a fake database user.|
|Know the difference between Encryption and Hashing. We'll use what we've learned for securing our user passwords.|
|Section 5: Project: Registering Users|
|Create the view and controller logic for registering a user! We almost finish it in one swoop, but we will in the Extending video!|
|You'll learn how to extend a CI Core Library and make use of it instantly! We'll be using it for getting an array of errors to use with our JSON output.|
|Security is important, here are some things to remember.|
Here we build an API controller with reasons related to an AJAX application. We then do a little code refactoring and lines of demarcation! Please also download the dashboard_view.php below.
|We build the API controller to make an AJAX call to create a record.|
We make our database list out our todo items. We also make sure creating a todo immediately adds it to the DOM, so there is a little refactoring happening as well.
We add the delete ability whilst debugging some of our code.
We implement edit on existing notes and cancelling them.
|Section 8: Creating a Reusable CRUD model|
We are going to Abstract the Active-Record and build out a re-usable CRUD model and begin with the GET ability. This will make queries and models a lot more convenient.
|Add the INSERT ability to the CRUD model in a very simple manner.|
|The CRUD model needs an UPDATE ability, this is the hardest part.|
|We'll clean up our Code and you can download the final results.|
|Section 9: Creating Notes|
|Following our pattern with the TODO items, we'll now do it with NOTE's. We'll use the same API controller and set everything up to list our notes out.|
|Here we wrap up the saving of notes. The two update parts were difficult so I've included a ZIP file if you cannot get yours working.|
|We'll easily add the ability to DELETE notes via ajax.|
|When we insert our records we never want to refresh the page, so we add this in. We also toss in an AJAX loader so it looks busy.|
|Here we clean up some of our DOM code and tidy it all up. You can download the entire project progress in the following ZIP file.|
|Section 10: Appearance: Twitter Bootstrap|
|Learn what Scaffolding is, it's quite simple. We'll decorate our forms to look a lot nicer.|
|This entire time the TODO has look ugly, so we'll be using some custom CSS to make it look nice.|
We are now ready to finish off the TODO styling so people might actually use it! (Revised): I had to manually add the audio at 10 minutes as my mic gave out.
|We style the Notes area and start to polish off the project.|
|What's software without bugs? They are bound to happen. I address a few display issues and we'll fix them up!|
|Closing remarks regarding this project and a few tidbits that may be handy!|
|Section 11: Misc|
This is a very basic run through of how to take advantage of i18n.
My name is Jesse, I'm 29 and married to a sweet little Puerto Rican woman.
I was born in Michigan, but I've been living in Central Florida the past 9 years.
I've been programming since I was 12. Beginning with QBasic in school, IRC Scripting at home, and HTML in Netscape Navigator on weekends. In those days I had to "View Source" to figure out how to do anything! I wrote my first website at this age using the GeoCities free websites. I then moved to AngelFire for a while. Remember those days?
When I hit 20, I spent several years freelancing with the skills I picked up from terribly long nights of studying. Freelancing was difficult for me because being a salesman wasn't in my blood, but I enjoyed the coding parts! I primarily used Linux, PHP, MySQL, and CSS. Then jQuery a bit later.
These days I live in the corporate world. I work with a small team of people and I enjoy it. I'm doing all sort of things from building solid back-ends, REST API's, HTML5/JS games, Python Django, and sometimes a bit of monkey work.
I enjoy explaining programming not because I like to talk, but because I find it rewarding to help people along their way. In fact, I found it so rewarding that I created a Youtube channel with hundreds of videos covering programming topics.
I hope you can benefit from my years of learning, I try to present it in a simpler way so you don't wrestle with all the questions I had!
30 day money back guarantee
Available on desktop, iOS and Android
Certificate of completion
Hours of video content