简体   繁体   English

无法将结果显示为选择选项Codeigniter 3

[英]Can't show result as select option Codeigniter 3

My Model name mymodel.php 我的模特名称mymodel.php

.....    
function all($table,$order)
        {
            $this->db->select('*');
            $this->db->from($table);
            $this->db->order_by($order);
            $query = $this->db->get();
            if ($query->num_rows() == 0) {
                return FALSE;
            } else {
                return $query->result();
            }
        } .....

My controller name donate.php 我的控制器名称donate.php

.....
    function index()
    {
      $data = array(
                        'rekening' => $this->mymodel->all('rekening', 'id_rekening ASC'),
                        );
                    $this->load->view('client/donate/index', $data);
                } .....

And this My View in path view/client/donate/index 这是路径视图/客户端/捐赠/索引中的“我的视图”

<?php foreach ($rekening as $rek): ?>
                <option value="<?php echo $rek->id_rekening; ?>" <?php echo set_select('ke_rekening', $rek->id_rekening); ?>><?php echo $rek->bank .' - '. $rek->atas_nama_rekening; ?></option>
              <?php endforeach ?>

But why cant show in select option? 但是为什么不能在选择选项中显示? I use codeigniter 3, Show image 我使用codeigniter 3, 显示图片

I think you have to pass value like this in modal. 我认为您必须在模式中传递这样的价值。

function all($table,$order)
        {
            $this->db->select('*');
            $this->db->from($table);
            $this->db->order_by("id_rekening",$order);
            $query = $this->db->get();
            if ($query->num_rows() == 0) {
                return FALSE;
            } else {
                return $query->result();
            }
        } 

if I get it correctly is your problem is to get all list or you want to make that option selected which is previously selected? 如果我正确理解,是您的问题是获取所有列表,还是要选择先前选择的选项?

Here is the solution for adding value to the <option> in the select box. 这是在选择框中为<option>添加值的解决方案。 I have also added how to get the pre-selected value selected. 我还添加了如何获取预选值的方法。

  In Model:
    $query = $this->db->select('*')
        ->from($table)
        ->order_by($order)
        ->get();

    $your_result_array = $query->result_array();
    return $your_result_array;


    In Controller:

    $data = $this->mymodel->all($data1,$data2);
    $this->load->view('client/donate/index',['data'=>$data]) ;


    Inside Your View:

    <?php

    if(isset($data) && !empty($data)){
        foreach ($data as $single_data){

        ?> <option value="<?= $data['id_rekening] ?>" <?= $your_selected_value_array['your_selected_value'] === $data['id_rekening] ? 'selected':''  ?> > <?= $data['your_other_data_column_name_here] ?> </option> <?php

        }
    }else {

          ?><option> data not found </optiop> <?php
    }
    ?>

controller donate.php 控制器donate.php

function index()
{
  $data = array('rekening' => $this->mymodel->all('rekening', 'id_rekening'));
  $this->load->view('client/donate/index', $data);
}

Model donate.php 模型donate.php

function all($table,$order)
{
   $this->db->select('*');
   $this->db->from($table);
   $this->db->order_by($order, 'asc');
   $query = $this->db->get();
   if ($query->num_rows() == 0) {
      return FALSE;
   } else {
      return $query->result();
   }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM