• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Model query with two possible inputs

I have a list of countries I can access publicly or via a password-protected admin backend. I want to access the countries by URL name from the front end for SEO/usability reasons, and I want to access them by ID on the backend (in case I need to edit the URL name). Here's the query from my model:
function get_country_info($country_id = null,$country_url_name = null) {
    if($country_id != null){
    if($country_url_name != null){
    return $this->db->get();
} // get_country_info
This works fine if I use ID, but doesn't return any records when I use the URL name. Is there something wrong with my model? How should I do this?


[eluser]Michael Wales[/eluser]
Everything looks right to me - are you calling the function correctly?
$country = get_country_info(null, 'my_url_name');

alternatively reconfigure the function to take $param_type and $param_ value and pass through whether you are selecting by ID or URL_name in param type. Obviously this is only practical if you have only one parameter.

Or create two functions...

walesmd's suggestion fixed it. (I was setting $country_name to null and calling it with both $country_name and $country_id.)

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  

  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2020 MyBB Group.