2016-11-26 3 views
1

У меня есть программа, в которой у меня есть код поиска. Когда я выполняю поиск, вы увидите страницу с результатом поиска. На этой странице будет отображаться некоторый контент, который можно щелкнуть. Когда я нажму на этот контент, он отобразит мне деталь продукта. На этой странице подробностей, когда я щелкнул обратно в браузере, он должен вернуться к странице результатов поиска, но у меня истек срок действия документа. Когда я перезагружаю страницу с истечением срока действия документа, она снова покажет результат поиска. Я использую codeigniter. Я попробовал код, который нашел, но он все еще не работает. Это моя проблема. Пожалуйста, помогите мне. Спасибо.Истек срок действия Задний браузер, нажатый при поиске в Codeigniter

Контроллер

public function search_bar($keyWordRestoran=NULL, $page=NULL, $orderBy=NULL) 
     { 
      if($this->session->userdata('logged_in')) 
      { 
       $session_data = $this->session->userdata('logged_in'); 
       $data['nama'] = $session_data['nama']; 
       $data['id'] = $session_data['id_user']; 
       $data['tipeUser'] = $session_data['tipe_user']; 

      } 
      else{ 
       $data['nama'] = ""; 
       $data['id'] = "0"; 
       $data['tipeUser']=""; 
      } 
      $data['url_image'] = $this->imageUrl; 
      $keyWordRestoran_ip = $this->input->post('input-keyword'); 
      if($keyWordRestoran_ip=="") 
      { 
       $session_data = $this->session->userdata('keyword_resto'); 
       $keyWordRestoran = $session_data['keyword_resto']; 
      } 
      else{ 
       $sess_array2 = array(); 
       $sess_array2 = array(
        'keyword_resto' => $keyWordRestoran_ip 
        ); 
       $this->session->set_userdata('keyword_resto', $sess_array2); 
       $session_data = $this->session->userdata('keyword_resto'); 
       $keyWordRestoran = $session_data['keyword_resto']; 
      } 

      $data['kunci_cari'] = $keyWordRestoran; 

      $config['base_url'] = base_url().'/home_controller/search_bar/'.$keyWordRestoran; 

      $data['jmlh_rows'] = $this->restoran->GetRestoran_search($keyWordRestoran); 

      $total_row = $data['jmlh_rows']->num_rows(); 

      $config["total_rows"] = $total_row; 
      $config["per_page"] = 8; 
      $config['cur_tag_open'] = '&nbsp;<a class="current">'; 
      $config['cur_tag_close'] = '</a>'; 
      $config['next_link'] = 'Next'; 
      $config['prev_link'] = 'Previous'; 

      $this->pagination->initialize($config); 

      $str_links = $this->pagination->create_links(); 
      $data["links"] = explode('&nbsp;',$str_links); 
      $data["dataRestoran"] = $this->restoran->GetRestoranPerPage_search($config["per_page"], $keyWordRestoran, $page, $orderBy); 
      $data['url_image'] = $this->imageUrl; 
      $data['data_kategori'] = $this->jenismakanan->Getjenismakanan(); 
      $this->load->view('food-type_search', $data); 
     } 

поиск Просмотр

<div class="header-bottom"> 
    <div class="col-xs-1"> 
     <button class="toggle-button"></button> 
    </div> 
    <div class="col-xs-11"> 
    <?php echo form_open('home_controller/search_bar');?> 
    <div class="search"> 
    <form method="GET"> 
     <input type="text" id= "input-keyword" name="input-keyword" placeholder="Search ..." value="<?php echo set_value('input-keyword')?>" > 
     <input type="submit" value=""> 
    </form><?php echo form_close(); ?> 
    </div> 
    </div> 
<div class="clearfix"> </div> 

+1

я, что вы используете метод POST в поисковой форме. Попробуйте метод get. –

+0

как использовать вход get? Я пытаюсь использовать его так: '$ keyWordRestoran_ip = $ this-> input-> get ('input-keyword'); ' ничего не случилось @PrakashSaini –

+0

Пожалуйста, укажите только свой код _relevant_ в своем вопросе. В этом случае форма поиска, любая JS, которая может быть связана с вашей формой поиска, и полученный код, который обрабатывает фактический поиск. –

ответ

2

Вы прилагаемую форму в два раза. Одна форма создается с помощью <?php echo form_open('home_controller/search_bar');?>, а другая статична в html. Поэтому нужно удалить статическую форму html, а for_open в порядке. В form_open вам нужно указать метод get. Вот я обновил этот code-

<div class="header-bottom"> 
    <div class="col-xs-1"> 
     <button class="toggle-button"></button> 
    </div> 
    <div class="col-xs-11"> 
    <?php echo form_open('home_controller/search_bar',array('method' => 'get'));?> 
    <div class="search"> 

     <input type="text" id= "input-keyword" name="input-keyword" placeholder="Search ..." value="<?php echo set_value('input-keyword')?>" > 
     <input type="submit" value=""> 
    </div> 
    <?php echo form_close(); ?> 
    </div> 
<div class="clearfix"> </div> 

У вас контроллер в функции search_bar теперь получить значение форму, используя метод GET вместо пост вроде как

$keyWordRestoran_ip = $this->input->get('input-keyword'); 
+0

это работа. спасибо –

Смежные вопросы