코드이그나이터 검색하면 페이지네이션 페이지 수 초기화 하려면?
조회수 1694회
안녕하세요. 코드이그나이터 검색에 test로 검색하면 url: www:test.com/page/20/name='test' 2페이지 그대로 검색하게 되버리는데요. 검색할 때 .../page/name='test' 이렇게 페이지 수 초기화 시키고 싶은데요. 어떻게 하면 되나요?
//검색어 초기화
//$search_word = '';
$page_url = "";
$uri_segment = 5;
$from_search_cu_complain ="";
$from_search_cu_manager ="";
$searchToArray = ""; //검색어 집합소
//주소 중에서 ?(검색어) 세그먼트가 있는지 검사하기 위해 주소를 배열로 전환
$uri_array = $this->segment_explode($this->uri->uri_string());
if( strpos($_SERVER['REQUEST_URI'], "?") !== false ){
if($_SERVER['QUERY_STRING']!=""){
if($_SERVER['QUERY_STRING']!=""){
$searchArray = explode("&", $_SERVER['QUERY_STRING'] );
foreach ($searchArray as $key => $value) {
$a = explode("=", $value);
$searchToArray[$a[0]] = $a[1];
//echo "name : " . $a[0] . " / value : " . $a[1] . "<bR>";
/*if($a[0] == "search_cu_complain") $from_search_cu_complain = $a[1];
if($a[0] == "search_cu_manager") $from_search_cu_manager =$a[1];*/
}
$page_url = '?'.$_SERVER['QUERY_STRING'];
}
}
}
//페이지네이션 라이브러리 로딩 추가
$this->load->library('pagination');
$this->load->helper('url');
$this->load->database();
// 페이지네이션 설정값
$config['suffix'] = '?'.$_SERVER['QUERY_STRING'];
$config['base_url']= '/crm/test/'.$tx_board.'/page/';
//$config['reuse_query_string'] = FALSE;
$config['first_url'] = $config['base_url'] . $config['suffix'];
$config['total_rows'] = $this->Crm_m->landing_data($this->uri->segment(3, $tx_board), 'count', '', '', $searchToArray); //게시물 전체 갯수
$config['per_page'] = '10'; // 페이지 출력수
$config['uri_segment'] = $uri_segment; // 페이지 넘버 주소 세그먼트값
$config['full_tag_open'] = "<p>";
$config['full_tag_close'] = '</p>';
$config['num_links'] = 5;
$config['first_link'] = '처음';
$config['last_link'] = '마지막';
$config['display_first_always'] = FALSE;
//페이지네이션 초기화
$this->pagination->initialize($config);
//게시물 목록을 불러오기 위한 offset, limit 값 가져오기
$data['page'] = $page = $this->uri->segment($uri_segment, 1);
$data['pagination'] = $this->pagination->create_links();
//순서값
if( $page > 1) $start = ( ($page / $config['per_page']) ) * $config['per_page'];
else $start = ($page - 1) * $config['per_page'];
$limit = $config['per_page'];
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
$("#search_btn").on('click',function(){ $from_url=$(location).attr('pathname'); while($from_url.charAt($from_url.length-1) != '/'){ $from_url=$from_url.slice(0,-1); } $('form[name=search_form]').attr('action',$from_url); });
삽질하다 그냥 아이디어로 이렇게 해놨습니다. 검색 버튼 클릭 시 현재 URL정보를 가져와서 페이지 수 제거 후 form action으로 이동 시켰습니다.
더 간편한 방법이 있으시다면 알려주세요! 감사합니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
저는 페이지네이션 설정 시 사용 한 base_url 값을 불러와서 action 값을 고정해줬어요
//controller: $datas['base_url'] =$config['base_url'];
<!-- view의 searchform--> <form name="searchForm" action="<?=$base_url?>" >
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력