2017-06-15 82 views
0

我需要显示数据从数据库中下拉。我需要显示数据从数据库到下拉模式CodeIgniter

这是我曾尝试:

Model.php

public function get_province() 
{ 
    $this->db->order_by('provincename');  
    $query = $this->db->get('tblprovince'); 

    return $query->result_array(); 

} 

Controller.php这样

public function __construct() 
{ 
    parent::__construct(); 
    $this->load->model('placemodel','tblplace'); 
    $this->load->model('placemodel', 'tblprovince', TRUE); 
} 

public function index() 
{ 
    $data['provinces'] = $this->tblprovince->get_province(); 
    $data = array('title' => 'Places'); 
    $this->load->helper('url'); 
    $this->load->view('templates/header');  
    $this->load->view('places/index',$data); 
} 

public function ajax_list() 
{ 

    $list = $this->tblplace->get_datatables(); 
    $data = array(); 
    $no = $_POST['start']; 
    foreach ($list as $place) { 
     $no++; 
     $row = array(); 
     $row[] = $no; 
     $row[] = $place->placename; 
     $row[] = $place->provincename; 
     $row[] = $place->placetypename; 
     $row[] = $place->tel; 


     //add html for action 
     $row[] = '<a class="btn btn-sm btn-primary" href="javascript:void(0)" title="Edit" onclick="edit_person('."'".$place->placeid."'".')"><i class="glyphicon glyphicon-pencil"></i> Edit</a> 
       <a class="btn btn-sm btn-danger" href="javascript:void(0)" title="Hapus" onclick="delete_person('."'".$place->placeid."'".')"><i class="glyphicon glyphicon-trash"></i> Delete</a>'; 

     $data[] = $row; 
    } 

    $output = array(
        "draw" => $_POST['draw'], 
        "recordsTotal" => $this->tblplace->count_all(), 
        "recordsFiltered" => $this->tblplace->count_filtered(), 
        "data" => $data, 
      ); 
    //output to json format 
    echo json_encode($output); 
} 

View.php

<div class="form-group"> 
         <label class="control-label col-md-3">Province</label> 
         <div class="col-md-9">         
         <select name="province_id" class="form-control"> 
         <option value="">Select Province</option> 
           <?php foreach ($provinces as $province): ?> 
           <option value="<?php echo $province['provinceid']; ?>"><?php echo $province['provincename']; ?></option> 
           <?php endforeach; ?>  
         </select> 
         <span class="help-block"></span> 
         </div> 
        </div> 

但结果不会出现在省模态。它没有出现在下拉列表中。

我在做什么错?

+0

替换$ data = array('title'=>'Places');由$ data ['title'] ='Places'; –

回答

0

因为你provinces 改变你的索引方法赋值后

public function index() 
{  
    $data = array('title' => 'Places'); 
    $data['provinces'] = $this->tblprovince->get_province(); // place here 
    $this->load->helper('url'); 
    $this->load->view('templates/header');  
    $this->load->view('places/index',$data); 
} 
+0

谢谢,我明白了。 –

0

我想你需要省份变量之前指定数组的数据阵列覆盖。 它被分配后$data['provinces']
所以现在$data只有这个值数组('标题'=>'地点');

public function index() 
{ 
    $data['provinces'] = $this->tblprovince->get_province(); 
    $data = array('title' => 'Places'); 
    $this->load->helper('url'); 
    $this->load->view('templates/header');  
    $this->load->view('places/index',$data); 
} 
+0

谢谢你,我明白了。 –