Question

I'm new to CI and URI routing in general.

I created a new app. Set the default controller to Main. In Main, I have an index method, a popular method and a recent method.

When I load my app, the url shows up as http://localhost/myapp... this obviously loads up the index method in the Main controller... that's fine.

Now how do I route my URIs so I can load up the popular and recent method by going to http://localhost/myapp/popular and http://localhost/myapp/recent respectively?

Was it helpful?

Solution

You can use CodeIgniter's routing features. To do that, just add the following lines to your application/config/routes.php file:

$route['recent'] = "main/recent";
$route['popular'] = "main/popular";

OTHER TIPS

$route['recent'] = "your_controller/recent";
$route['popular'] = "your_controller/popular";

That's what you will need. Any call to "recent" will route to "your_controller/recent". The same goes with popular.

If popular and recent are actual pages in your application, as opposed to functions, you ought to move those to their own controllers, as opposed to keeping them under main.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top