Fat-Free Framework – 4. Moving the Routes in a file

Created at: October 7, 2016; Last update: October 7, 2016

In the previous tutorial (Fat Free Framework – 3. Creating a configuration file) we learned about configuration files, and how to import them into our app. Let’s look into our main index.php:

As you can see we have a route defined in there, which tells our app that when someone tries to access the homepage, it should serve the Homepage controller with its index() method. Continue reading

Fat-Free Framework – 3. Creating a configuration file

Created at: October 7, 2016; Last update: October 7, 2016

In the previous tutorial (Fat Free Framework – 2. Moving logic to controllers), we moved the Homepage controller inside the App/Controllers directory. In order to tell the framework we did this, we’ve set a variable called “AUTOLOAD” to point to that particular directory:

AUTOLOAD is one of many global variables, that is “the variables used by the framework globally”. F3 is allowing us to change those variables by using the set() method inside our php scripts. Read more about the global variables here: https://fatfreeframework.com/framework-variables#Globals

Of course we can keep the configuration things inside the main index.php and/or wherever else we like, but we can also use a configuration file. What this file does is keep the configuration variables in an easy to read format, so instead of creating a lot of lines that start with $f3->set(‘variable’,’value’); we can have a nice looking file where everything has its own place.

So let us create a setup.cfg file inside our App/Config directory, and move the AUTOLOAD global variable inside it:

Once we did this we only need to tell the main index file to retrieve the configuration data from that specific file, instead of setting the AUTOLOAD global. So let’s see our main index.php modified:

And since we are working with the configuration file, why not also set the debug level to 3, as this will offer us a lot of details when there is an error on our application.

Let’s see how our setup.cfg looks like:

And… just to be sure that we did all we can so no one can see our configuration files (although we will also move the App directory outside the public directory, later), let’s create a .htaccess file and put it inside our App:

Put an Enter after that line, and save it. Nice. In the next tutorial we will learn more about the configuration files and also move the routes in one such config file.

Fat-Free Framework – 2. Moving logic to controllers

Created at: October 6, 2016; Last update: October 7, 2016

In the previous tutorial (Fat Free Framework – 1. Installing Fat Free Framework…), we tested the installation of Fat Free Framework by creating a route that was calling an anonymous function when someone was accessing the application:

But if we do this for every “page” that someone access the main index.php file would become pretty large soon. Continue reading

Fat-Free Framework Tutorials

Created at: October 6, 2016; Last update: October 7, 2016

Here you should see some Fat-Free Framework tutorials. These are only what I understood from other tutorials. This is not a “copy/paste” series. It is everything I tested and liked.

But before my tutorials, you will see some resources that I used in order to learn more about this framework:

https://www.youtube.com/watch?v=R-ydcTTrR5s&list=PLX0Ak4vUBQfClFDicUaSfm-urMi_kt3cg

Now to my tutorials…

Back to (PHP) basics. Creating your own SEO friendly “mini-website” in PHP

Created at: May 27, 2016; Last update: August 12, 2016

I want to be noted that this is not a tutorial about creating an MVC framework from zero. If you want that kind of tutorial, you can find a lot of them (https://www.youtube.com/playlist?list=PLfdtiltiRHWGXVHXX09fxXDi-DqInchFD https://www.youtube.com/playlist?list=PL7A20112CF84B2229).

There are moments in your programmer life when you are asked to do a small “landing page”, which actually turns out to be a “mini-website” with an “About” page, a “Contact” page and a few other pages. Continue reading

Login (and register) with Facebook and Ion Auth

Created at: May 23, 2016; Last update: August 11, 2016

A lot of people asked (including a very generous donor called Federico), so why not try to do it?

I must start by telling you that this may not be the best way of doing it but it is a basic one…

So let’s start. In order to start doing our Facebook login we first need to take a look at the documentation from Facebook (https://developers.facebook.com/docs/facebook-login). This documentation says that in order to login with Facebook we first need to set up an “app” with an ID and a secret key (https://developers.facebook.com/docs/facebook-login/web). We do this by going to our App Dashboard (https://developers.facebook.com/apps/). In there we can create a “Demo” app, which is good for our testing needs. Continue reading

Meet Tusker – a small task manager for your projects

Created at: April 8, 2016; Last update: April 8, 2016

Hello again. I would like to present to you a small project I am working at. It is called Tusker, is made using CodeIgniter 3.x, and it is a simple task management web app. I sure hope you give it a try and tell me about new things to add to it. The Github repository can be found here: https://github.com/avenirer/Tusker

Continue reading

“Why develop a web app with CodeIgniter in 2016?”

Created at: April 7, 2016; Last update: April 7, 2016

This question was proposed as a subject by one of this blog’s visitors. It is indeed a good question, especially considering that “CodeIgniter remained way behind other frameworks”.

So let’s think a bit about why would we use an “aged framework” when we have great frameworks like… and here the typical example is Laravel. Continue reading

How to make “truly” SEO friendly URLs in CodeIgniter (without “duplicate content” on underscore URLs)

Created at: March 23, 2016; Last update: March 24, 2016

I promised myself I won’t do anymore tutorials regarding CodeIgniter until a new version is about to appear, but I can’t help myself. And this subject seems more than appropriate for a new tutorial.

Let us start with the beginning. In routes.php (application/config/routes.php), we have a configuration parameter called “translate_uri_dashes“. If we set this parameter to TRUE, the CodeIgniter framework will translate the dashes (“-“) in our urls into underscores (“_”) when calling a controller or a method. This, of course is what we want in order to have “SEO friendly” URLs (although I think it’s strange that up until this moment, search engines can’t interpret an url). Continue reading