CodeIgniter Forums

Full Version: Result Set directly pass to dropdown
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

El Forum

[eluser]abhinavp[/eluser]
Hello There,

I need to know is there any way in Codeigniter in which we can pass database result set directly to form_dropdown function.

Please let me know, if there is any way to do this task.

Thanks

El Forum

[eluser]guzzilar[/eluser]
Code:
foreach($query->result() as $item):
     $data[$item->name] = $item->value;
endforeach;

form_dropdown('name' ,$data);

Try this. Big Grin

El Forum

[eluser]CroNiX[/eluser]
No there isn't. You'd have to do what guzzilar suggested, or create a helper to do it since this is a very common thing and you will probably use it many times.

Code:
function array_to_dropdown($raw_data, $key_field, $value_field)
{
  $data = array();
  foreach($raw_data as $raw)
  {
    $data[$raw[$key_field]] = $raw[$value_field];
  }
  return $data;
}

Usage:
Code:
$values = $this->db
  ->select('id, name, address, city, state_id')
  ->get('users')
  ->result_array();

$dropdown_values = array_to_dropdown($values, 'id', 'name');

echo form_dropdown('my_dropdown', $dropdown_values);