使用从Mysql数据库返回的值填充Dropdown

时间:2016-08-02 16:06:18

标签: php mysql codeigniter model-view-controller codeigniter-2

我无法通过连接mysql数据库中的firstname和lastname来填充下拉列表。我尝试了一些查询,但似乎都没有。我知道我的查询中有错误,但无法弄清楚发生了什么。此外,我已将下面的MVC代码与我的表格一起粘贴。

我的控制器代码是:exits.php

function admin_add_absconding(){
    global $SITE,$USER;
    $data = array();
    $data['row'] = new stdClass();
    $data['row'] = $this->admin_init_elements->set_post_vals($this->input->post());
    $data['offices']=$this->mod_common->get_all_offices();
    $clients = currentuserclients();
    $data['roles'] = $this->mod_common->get_cat_array('designation','status',"1' AND id > '0",'designation');
    get_city_state_country_array($data,array('cityid'=>$data['row']->cityid));
    $data['error_message'] = '';
    $data['row']->id = $this->uri->segment(3);
    $data['id'] = $this->uri->segment(3);
    $data['action'] = 'add';
    $data['heading'] = 'Add';
    $data['msg_class'] = 'sukses';
    $data['path']=$path;
    $post_action = $this->input->post('action');
    $data['groups'] = $this->exit_common->get_all_names();

    if($post_action=='add' || $post_action =='update' ){
        $post_array = $this->input->post();
        $action = ($post_action == 'add')?'inserted':'updated';
        //echo '<pre>';print_r($SITE);die;
        echo $post_array['exit_type'] = 'Employee Initiated';

        if($data['error_message'] == 'Record '.$action.' successfully'){
            $data['row'] = new stdClass();
            $data['row']->id = $this->uri->segment(3);
            $data['row']->status = 1;
        }

    }

我的型号代码是:exit_common.php

function get_all_names(){

    $query = $this->db->query('SELECT firstname,lastname FROM pr_users_details');
    echo $this->db->last_query();
    die;

    return $query->result();
}

我的观看代码是:backend_add_new_exit.php

<select class="form-control">
    <?php 

    foreach($groups as $row)
    { 
        echo '<option value="'.$row->firstname.'">'.$row->lastname.'</option>';
    }
    ?>
</select>

我的Mysql表是: enter image description here

2 个答案:

答案 0 :(得分:1)

get_all_names()函数中,在返回结果之前回显查询和diedie会立即停止您的脚本。

根据您显示的表定义,您的查询似乎没有任何错误,但除了SQL语法错误之外,还有许多可能失败的原因。

答案 1 :(得分:0)

在你的模型exit_common.php上试试这个

<?php

function get_all_names(){
		$query = $this->db->get('pr_users_details');
		if ($query->num_rows() > 0)
		{
		   return $query->result();
		}
	}

?>

On you Views使用以下代码

<select class="form-control">
<?php foreach($groups as $row):?>
	  <option value="<?php echo $row->firstname; ?>"> <?php echo $row->lastname; ?> </option>
	<?php endforeach; ?>
</select>

希望有所帮助

相关问题