Welcome Guest, Not a member yet? Register   Sign In
Getting a URL segment and calling a function inside a Controller

Hello gentlemen's. I'm new here and I started using CI a few days ago and I'm having a few troubles.

Sorry for my bad english and sorry if this thread is already in this forum. I've made a simple search and haven't solved my questions yet. Well, here we go!

What I want to do is to get a segment in my URL and call a function inside a Controller. So, in my case I have the URL: http://localhost/CI_Project_A/call/990

In my URL, the last number (990) will be the ID that I'll use to perform a search in my database. So, that last number is the call ID in my database. Ok, I've used $this->uri->segment and now I can pass that segment for a variable. That's not the problem.

But now, I wanna call a function to perform my search. Look what I've done until now: http://pastebin.com/xSAECRRf

And It's working for now, but when I access the URL http://localhost/CI_Project_A/call/990, I get a 404 Page Not Found, but I also get the text that I've performed in my DB.

I'm probably doing this wrong. If anyone here can help, I'll appreciate.

Maybe it will help you to look at

CI Routing
Controller _remap

and to know the basic procedural logic of CI:

Assume you have an URI, then the router will determine the controller. Then, CI checks there is a file named like your controller in ./application/controllers PLUS the class inside that file has the same name (this is possible after including the file). Furthermore, it will check if there is a _remap()-method in your controller. It is called if it exists. If there is no _remap()-function, CI will look for the "thing" you provided as the second URI-argument which is assumed to be a controller's method. If there is no method called like your second URI-argument, a 404 will be shown.

That means: You don't have a '990' method in your 'call' controller => there's a 404.

Solutions: Read the two links above and do either some routing or remapping.

Cheers and good luck!


You should take a minute to learn about Apache virtualhosts...

Theme © iAndrew 2016 - Forum software by © MyBB