You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							66 lines
						
					
					
						
							2.8 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							66 lines
						
					
					
						
							2.8 KiB
						
					
					
				
								<?php
							 | 
						|
								defined('BASEPATH') OR exit('No direct script access allowed');
							 | 
						|
								
							 | 
						|
								class Search extends WB_Controller
							 | 
						|
								{
							 | 
						|
								    /**
							 | 
						|
								     * 검색 결과 페이지
							 | 
						|
								     */
							 | 
						|
								    public function index()
							 | 
						|
								    {
							 | 
						|
								        // 검색어를 가져온다.
							 | 
						|
								        $this->data['query'] = trim($this->input->get('query', TRUE));
							 | 
						|
								
							 | 
						|
								        // 검색어에 공백이 두개 들어가있다면, 하나로 줄인다.
							 | 
						|
								        $this->data['query'] = str_replace("  "," ", $this->data['query']);
							 | 
						|
								
							 | 
						|
								        // 검색어가 비어있는지 체크
							 | 
						|
								        if( empty($this->data['query']) )
							 | 
						|
								        {
							 | 
						|
								            alert(langs('공통/search/search_txt_empty', FALSE));
							 | 
						|
								            exit;
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        // 어느검색인지 (통합/board)
							 | 
						|
								        $this->data['board_key'] = $this->input->get('board_key', TRUE, "total");
							 | 
						|
								
							 | 
						|
								        $this->data['page'] = $this->input->get('page', TRUE, 1);
							 | 
						|
								        if( empty($this->data['board_key']) OR $this->data['board_key'] == 'total' ) {
							 | 
						|
								            $this->data['page'] = 1;
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        // 검색결과와 각 카테고리별 검색수를 가져온다.
							 | 
						|
								        $this->load->model('search_model');
							 | 
						|
								        $this->data['search_result'] = $this->search_model->search_result( $this->data['query'], $this->data['board_key'], $this->data['page'] );
							 | 
						|
								
							 | 
						|
								        // 검색어를 DB에 저장한다.
							 | 
						|
								        $this->db->set('sea_query', $this->data['query'])->set('sea_regtime',date('Y-m-d H:i:s'))->insert("search");
							 | 
						|
								
							 | 
						|
								        // 3개월 이상 된 검색어를 삭제한다.
							 | 
						|
								        $this->db->where("sea_regtime < DATE_ADD(CURDATE(), INTERVAL '-3' MONTH)",NULL,FALSE)->delete('search');
							 | 
						|
								
							 | 
						|
								        // 상세 검색일경우 페이지네이션 세팅
							 | 
						|
								        $this->data['pagination'] = "";
							 | 
						|
								
							 | 
						|
								        if( ! empty($this->data['board_key']) && $this->data['board_key'] != 'total' ) {
							 | 
						|
								            $paging_config['page'] = $this->data['page'];
							 | 
						|
								            $paging_config['total_rows'] = (int) $this->data['search_result']['count'][ $this->data['board_key'] ];
							 | 
						|
								            $paging_config['page_rows'] = 5;
							 | 
						|
								            $paging_config['fixed_page_num'] = 10;
							 | 
						|
								
							 | 
						|
								            $this->load->library('paging');
							 | 
						|
								            $this->paging->initialize( $paging_config);
							 | 
						|
								            $this->data['pagination'] = $this->paging->create();
							 | 
						|
								        }
							 | 
						|
								        
							 | 
						|
								        // 메타태그 설정
							 | 
						|
								        $this->site->meta_title = "[{$this->data['query']}] ". langs('공통/search/search_result', FALSE);;            // 이 페이지의 타이틀
							 | 
						|
								        // $this->site->meta_description 	= "";   // 이 페이지의 요약 설명
							 | 
						|
								        // $this->site->meta_keywords 		= "";   // 이 페이지에서 추가할 키워드 메타 태그
							 | 
						|
								        // $this->site->meta_image			= "";   // 이 페이지에서 표시할 대표이미지
							 | 
						|
								
							 | 
						|
								        // 레이아웃 & 뷰파일 설정
							 | 
						|
								        $this->theme = $this->site->get_layout();
							 | 
						|
								        $this->view = "search/index";
							 | 
						|
								    }
							 | 
						|
								}
							 |