Uthpala Pitawela
Uthpala Pitawela

Reputation: 113

Drop down does not show the option selected in codeigniter

I used a drop down button to select an option from the given options. But when I selected an option it does not display that in the box. And I it gives chance only once to select an option. For the drop down I retrieve data from the database. This is the view code (Its inside Assign_Inquiries)

<select id = "counsellorname" name="counsellornamename" class="btn btn-default dropdown-toggle">
<option value = "0"> Select Category Name</option>                             
<?php

foreach($result as $row){
  echo "<option value = ".$row['email'].">".$row['fname']." ".$row['lname']."</option>";
}

?>
</select>

Its really great if someone can help me. Thanks inadvance

This is the controller code

<?php
class Assign_Inquiries_Controller extends CI_Controller{
    function index(){
        $this->load->model('Assign_Inquiries_Model');
        $data['result'] = $this->Assign_Inquiries_Model->index();
        //print_r($data);

        $this->load->view('Assign_Inquiries',$data);
    }
}



?>

This is the model code

<?php
class Assign_Inquiries_Model extends CI_Model{
    function index(){
        $this->db->select('first_name,last_name,email');
        $where = "status =3";
        $this->db->where($where);
        $query = $this->db->get('user');
        foreach ($query -> result() as $row) {
            $data[] = array(
                'fname' => $row->first_name,
                'lname' => $row->last_name,
                'email' => $row->email
                );
        }
        return $data;
    }
}


?>

Upvotes: 0

Views: 1855

Answers (1)

Hikmat Sijapati
Hikmat Sijapati

Reputation: 6994

Change your model code as below: use result_array() which returns the result in array format.

function index(){
        $this->db->select('first_name,last_name,email');
        $this->db->where('status',3);
        $query = $this->db->get('user');
        return $query ->result_array();

    }

In view you loop must be like this....

foreach($result as $row){
  echo "<option value = ".$row['email'].">".$row['first_name']." ".$row['last_name']."</option>";
}

Upvotes: 1

Related Questions