Make CRUD system in CodeIgniter with GroceryCRUD

With Grocery CRUD you can create a full stable CRUD in a few seconds. If you are a PHP CodeIgniter developer you will often have the problem to create a simple, stable and secure backoffice system.

 

Even in CodeIgniter, creating a CRUD system can take some time, involving the business logic, the models and the views again from the beginning for each table. As you can see there are similar things in those projects. The Create (or else Add) the Update (or else Edit) , the Delete and of course the listing grid .

With grocery CRUD and with the power of Codeigniter framework , you can create a full CRUD system in just one minute. With this Codeigniter CRUD generator , you don’t have to copy all your CSS, JS, tables, forms, grid, functions , models, libraries, views to your backoffice system. Just few lines of code and you are ready to have your own CMS. The CRUD is working well with Codeigniter 2.0.x and 2.1.x

EasyGoogleMaps: Google Maps Library for PHP

EasyGoogleMaps is a free library that you can download and use to ease the use of Google Maps in your PHP applications. This PHP class can also be used in CodeIgniter by loading it as a CodeIgniter Library.

require'EasyGoogleMap.class.php';
$key ="XXX";
$maps = & new EasyGoogleMap($key);
$maps->SetMapZoom(10);
$maps->SetAddress("rambla, montevideo, uruguay");
$maps->SetInfoWindowText("First address");

Pass your $maps object to the view and then in your view or HTML page you can use it in this way:

<html>
<head>
<title>Google Maps example using EasyGoogleMaps</title>
<?php echo $maps->GmapsKey(); ?>
</head>
<body>
<?php echo $maps->MapHolder(); ?>
<?php echo $maps->InitJs(); ?>
<?php echo $maps->UnloadMap(); ?>
</body>
</html>

In CodeIgniter you can place the EasyGoogleMaps library in your libraries folder and then use $this->load->library(‘EasyGoogleMaps’, $key); to load it.

Download EasyGoogleMaps

Vanity URL in CodeIgniter

A Vanity URL is a URL approach used in many websites to make shorter URLs for example to access user’s profiles.

You can create personalized Vanity URL in CodeIgniter applications in different ways. In CodeIgniter 1.7.x and 2 you can override the routes class to include a custom code, as pointed here.

SosInformatico extended the Route class to support vanity URL under a project using HMVC. You can learn more about this approach here, despite the webpage is in Spanish.

What is the advantage of using Vanity URL in CodeIgniter or any other application?

Some application architects and also SEO experts use the vanity URL for username like in Social networking sites like MySpace, Twitter, Facebook and many other to avoid the /user/ segment in the URL and make them shorter.

This may have some benefits if you want for example avoid someone to run a site:<yoursite>/user/ and get a big list of users indexed in the search engine but also to uniform the URLs making them more clear to the end user and easier to remember. One of the major benefits of vanity URL in twitter is that easily you can access the Twitter page for a given user by just adding the username after the domain name.

 

Using CodeIgniter hooks for stats collection

Damian from gostomski.co.uk posted an interesting example about how to use hooks to collect simple stats in a CodeIgniter application. The example shows us how to collect stats from a website using our own stats database table to track things like project Id, session Id, etc. instead of using Google Analytics or other web analysis or reporting tool.

He used this approach to track stats in a project management tool but this idea can also be used to track any other variables in your own CI application using hooks, for example if you have a job listing project and want to keep track of number of views for a particular listing or under a given session you can also use an approach like this one.

Of course, you can also try to use Google Analytics, in particular the Event Tracking and Custom variable tracking that helps you adding more analytics tracking support to your GA reports.