I've been developing a site over the past few weeks using CodeIgniter as the framework. I've been thinking of the best way to accomplish something, which in a lot of other frameworks in other languages is relatively simple: sortable tables. CodeIgniter switches off query strings by default, because your URLs contain method parameters. So a URL might look like:
You might think that you could just add in
sortOrder as two additional parameters to the controller method. I don't particularly want to do that, mainly because I want to have a re-usable controller. When you use query string parameters, PHP can easily tell you whether there is a parameter called
sortBy. However, when you're using URL based parameters, it will vary with each controller.
I was wondering what my options were. As far as I can see they are something like:
sortOrderparameters, just suck it up, and develop some less-than-reusable component for it.
sortOrderin the session (although it would have to know where you came from, and send you back to the original page).
I just can't quite believe such a simple task would present such a problem! Am I missing something? Does anyone have any recommendations?
Edit for clarification: I love jQuery, and I'm already using it on the site, so TableSorter is a good option. However, I would like to do server-side sorting as there are some pages with potentially large numbers of results, including pagination.
I have been using this method: http://codeigniter.com/forums/viewthread/45709/#217816
I also expanded it to set cookies based off the sort so when someone comes back the table is sorted the same as before.