【问题标题】:How to retrieve data and display in the textarea of view after Search the data in Codeigniter在 Codeigniter 中搜索数据后如何检索数据并显示在视图的文本区域中
【发布时间】:2019-02-21 04:41:44
【问题描述】:

我是 Codeigniter 的新手。 我想创建一个模块,在搜索 id 之后,它将从数据库中检索数据并在 textarea 中显示数据。 我不知道如何从数据库中检索数据,并在单击“搜索”按钮后在文本区域中显示数据。 希望可以有人帮帮我。谢谢。

这是模型:

function search($code){
   $this->db->select('name','telno','address','introducer');
   $this->db->from('customer');
   $this->db->like('code',$code);
   $query = $this->db->get();
   if($query->num_rows() > 0){
    return $query->result();
   }else{
    return $query->result();
   }
}

这是控制器:

public function searchcus(){ 
    $this->load->model('Ordering_model');
    $pgcode = $this->input->post('search');
    if(isset($code) && !empty($code)){
        $data['customer'] = $this->Ordering_model->search($code);
        $this->load->view('ordering/index',$data);
    }else{
        redirect($this->index());
    }
}

这是视图:

<div class="container">
            <div class="col-md-6">
                <div class="form-group">
                    <div class="col-md-9">
                            <input type="text" class="form-control" name="search" id="search" placeholder="<?php echo "Customer's PG Code";?> " required />
                    </div>
                    <span class="input-group-btn">
                        <button class="btn btn-default" type="submit" name="submit" value="Search" ><span class="glyphicon glyphicon-search"><?php echo "Search"; ?></span></button>
                    </span>
                    </div>
            </div>
            </form><br/>
    </div>
    <table style="width: 2000px;" class="table table-striped">
                 <div class="col-xs-4">
                    <div class="input-group">
                    <span class="input-group-addon">Name</span>
                    <input id="msg" type="text" class="form-control" name="msg" >
                    </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Tel</span>
                    <input id="msg" type="text" class="form-control" name="msg" >
                </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Introducer</span>
                    <input id="msg" type="text" class="form-control" name="msg" >
                </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Address</span>
                    <textarea class="form-control" rows="5" id="address"></textarea>
                </div>
                </div>
                <br>


    </table>

【问题讨论】:

  • 您将通过在搜索输入字段上调用输入onkeypress 函数来通过ajax 实现来完成此操作。请按照本教程https://www.youtube.com/watch?v=F_eRdrKCPWY

标签: php codeigniter


【解决方案1】:

使用以下代码。它有效...

控制器:

 public function searchcus() {
        $pgcode = $this->input->post('search');
        if (isset($pgcode) && !empty($pgcode)) {
            $data['customerr'] = $this->Ordering_model->search($pgcode);
            $this->load->view('viewpage', $data);
        } else {
            redirect($this->index());
        }
    }

型号:

   function search($pgcode) {
        $this->db->select('*');
        $this->db->from('customer');
        $this->db->like('code',$pgcode);
        return $this->db->get()->result();
    }

查看页面:

<div class="container">
    <form method="post" action="<?php echo base_url(); ?>index.php/welcome/searchcus">
            <div class="col-md-6">
                <div class="form-group">
                    <div class="col-md-9">
                            <input type="text" class="form-control" name="search" id="search" placeholder="<?php echo "Customer's PG Code";?> " required />
                    </div>
                    <span class="input-group-btn">
                        <button class="btn btn-default" type="submit" name="submit" value="Search" ><span class="glyphicon glyphicon-search"><?php echo "Search"; ?></span></button>
                    </span>
                    </div>
            </div>
            </form><br/>
    </div>
<?php if(empty($customerr)) { } else { foreach($customerr as $row) { ?>
    <table style="width: 2000px;" class="table table-striped">
                 <div class="col-xs-4">
                    <div class="input-group">
                    <span class="input-group-addon">Name</span>
                    <input id="msg" type="text" class="form-control" name="msg" value="<?php echo $row->name ?>" >
                    </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Tel</span>
                    <input id="msg" type="text" class="form-control" name="msg" value="<?php echo $row->telno ?>" >
                </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Introducer</span>
                    <input id="msg" type="text" class="form-control" name="msg" value="<?php echo $row->introducer ?>" >
                </div>
                </div>
                <br><br>
                <div class="col-xs-4">
                <div class="input-group">
                    <span class="input-group-addon">Address</span>
                    <textarea class="form-control" rows="5" id="address"> <?php echo $row->address ?></textarea>
                </div>
                </div>
                <br>


    </table>
<?php } } ?>

【讨论】:

    【解决方案2】:

    尝试使用型号代码进行搜索:

    如果 ($code && $code != '') { $where = "(TABLE_NAME.COLUMN LIKE '%" . $code . "%')"; }

    【讨论】:

      【解决方案3】:

      使用 ajax 你可以实现你的目标是一些变化
      模型:

      function search($code){
         $this->db->select('name','telno','address','introducer');
         $this->db->from('customer');
         $this->db->like('code',$code);// by default it will run '%$code%' no change here
         $query = $this->db->get();
         if($query->num_rows() > 0){
              return $query->result();
         }else{
              return array();
         }
      }
      

      控制器:

      public function searchcus(){ 
          $this->load->model('Ordering_model');
          $code = $this->input->post('search');//changes
          if(!empty($code)){//changes
              $data['customer'] = $this->Ordering_model->search($code);
              $this->load->view('ordering/index',$data);
          }else{
              redirect($this->index());
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-06
        • 2017-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-31
        • 1970-01-01
        相关资源
        最近更新 更多