2015-11-04 76 views
0

我已经创建了我的网页搜索。但我想按下提交按钮时,输出文本框中的文本不会丢失,当结果出来时。 这是我的代码: 控制器:如何在提交后保持文本输入

public function index(){ 
    $data = $this->mymodel->GetArtikel(); 
    $this->load->view('tabel',array('data' => $data)); 
    } 

型号:

public function GetArtikel(){ 
    $this->db->select('a.id_artikel, a.judul, a.tanggal_buat, a.tanggal_update, b.nama_kategori, c.nama_lengkap, c.id_user'); 
    if(!empty($_POST['cari_judul'])){ 
     $this->db->like('a.judul',$_POST['cari_judul']); 
    } 
    if(!empty($_POST['cari_penulis'])){ 
     $this->db->like('c.nama_lengkap',$_POST['cari_penulis']); 
    } 
    if(!empty($_POST['cari_kategori'])){ 
     $this->db->where('b.nama_kategori',$_POST['cari_kategori']); 
    } 
    $this->db->from('artikel as a'); 
    $this->db->join('kategori as b', 'a.id_kategori=b.id_kategori','LEFT'); 
    $this->db->join('user as c','a.id_user=c.id_user','LEFT'); 
    $data=$this->db->get(); 

    return $data->result_array(); 
} 

观点:

<form method="POST" action="<?php echo base_url()."index.php/crud/"; ?>"> 
    <table widht="200" border="1"> 
     <tr> 
      <td>Judul</td> 
      <td><input type="text" name="cari_judul" value="<?php echo $_POST['cari_judul']; ?>"></td> 
     </tr> 
     <tr> 
      <td>Penulis</td> 
      <td><input type="text" name="cari_penulis"></td> 
     </tr> 
     <tr> 
      <td>Kategori</td> 
      <td><input type="radio" name="cari_kategori" value="Fiksi" >Fiksi 
      <input type="radio" name="cari_kategori" value="Non Fiksi" >Non Fiksi</td> 
     </tr> 
     <td colspan="2"><input type="submit" value="Cari"></td> 
     </tr> 
    </table> 

回答

0

如果你想重新填充公布值 -

你可以在控制器中设置会话 -

$this->load->library('session'); 
if ($this->input->post('name')) { 
    $this->session->set_userdata('name' => $this->input->post('name')); 
} 

或者

set_value()

0

您可以使用flashdata来存储一个重定向的值。但要使用flashdata,创建后必须使用redirect()

$this->session->set_flashdata('name' => $this->input->post('name')); 
redirect("controller/method"); 

希望这有助于。

0

你可以改变你的代码是这样

public function index(){ 
    $data = $this->mymodel->GetArtikel(); 
    $this->load->view('tabel',array(
     'data' => $data, 
     'judul' => $_POST['cari_judul'], 
     'penulis' => $_POST['cari_penulis'], 
     'kategori' => $_POST['cari_kategori'] 
    )); 
} 

发回你输入

,并在您的视图中的每个数据

<td><input type="text" name="judul" value="<?php echo $cari_judul; ?>"></td> 
相关问题