반응형

검색 서치결과페이지에서

검색어에 하이라이트를 줘야겠다

php로 하면 편하지만 php를 사용하는 홈페이지가 아니어서

javascript로 따로 결과에 추가해줬다

//직원 검색어 하이라이트 추가
search_filter();    
function search_filter(){
    var search = $('#searchKeyWord').val();
    var sf_cnt = 0;
    $(".sc_td, .sch_li p, .table_view td a").each(function () {
        var regex = new RegExp(search,'gi');
        
        $(this).html( $(this).text().replace(regex, "<span class='text-danger bold'>"+search+"</span>") );
        
        sf_cnt = sf_cnt+1;
    });
};  

text-danger 클래스에 css로 컬러를 넣어놨다

728x90
반응형
반응형

후 그누보드기반으로 관리자페이지를 만드는데

참 난감? 신선? 한 구간이 있었다

db 테이블별로 날짜칼럼명도 데이터칼럼명도 전부 다른 테이블을

싹 모아서 날짜순 정렬을 해달라는....

그중에 userid는 같아서 그나마 다행이긴했는데

참;

이렇게 저렇게 해보다가

union 해야겟다 결정하고 나서보니

테이블마다 필요한 칼럼갯수가 다 틀린거;

게다가 테이블마다 표출해야할것도달라서 테이블명도 넣어야햇다

아무튼

" SELECT * FROM
(
SELECT id, receiptdate, Complete_id, User_id, reward_ap, 'reward' AS table_name FROM reward
UNION ALL
SELECT id, completedate, Course_id, User_id, '' AS ap, 'complete' AS table_name FROM complete
UNION ALL
SELECT id, visit, Local_id, User_id, '' AS ap, 'stemp' AS table_name FROM stemp
UNION ALL
SELECT id, startDate, Arcontents_id, User_id, '' AS ap, 'arplaylog' AS table_name FROM arplaylog
UNION ALL
SELECT id, date, Local_id, User_id, '' AS ap, 'arphotoplaylog' AS table_name FROM arphotoplaylog
)
AS U where U.User_id = '{$row['id']}' order by U.receiptdate desc "

일단 나온 코드가 이건데

칼럼을 억지로 맞췄다.

아직까지 union은 완벽히 이해는 못한거같다

나중에 한번더 봐봐야지

728x90
반응형
반응형

후 그누보드기초로 홈페이지 제작중에

게시판이아닌 신규페이지에서 검색을 활용하는경우가 많다

보통 일반적인 db구조와 검색에서는 그냥 form 안에 넣고 submit 해서 검색을 만드는편인데

두테이블을 join 하고있는 상황에서

다른테이블까지 검색을 해야하는 경우가 생겼다

참... 귀찮

아예 세 테이블을 join 해버릴까하다가 db에 칼럼이 얼추 겹치게 만들어놔서

그냥 따로 추가하기로햇다 귀찬키도하고

일반적인 경우 form 안에 넣어버리면 따로 주소를 건드리거나 그럴필요는 크게없는데

이번경우에는 복수검색이 있고 배열로 넘기는 상황이라

$_SERVER['REQUEST_URI'] 을 사용하게되었다

$_SERVER['REQUEST_URI'] 은 현재 내 주소창을 그대로 가져오는데

여기서 만약 내가 검색할 input name이 ss_url 이라면

$ss_url = $_SERVER['REQUEST_URI'];
$ss_url = explode('&s_sc_id',$ss_url);
$result_url = $ss_url[0];

이런식으로 주소를가져왔다

검색값을 제외시킨이유는

리셋을 시키지않으면 계속 누적해서 주소창에 붙길래 할때마다 뜯고 새로붙이는식으로했다

얼추 잘돌아간다 일단은

다음난관이 기다리긴하지만;

728x90
반응형
반응형

일반적인 리스트 , 뷰  페이지를 작업하게됬다

학교관련 페이지여서 지역과 계열등등의 검색옵션이 필요했다

하나씩하나씩 검색했으면 참 좋았겠지만 역시나 추가요청이 나왔다

여러지역을 눌러서 검색하고싶다고한다

어찌보면 당연한 기능이기도한데 훔

어쨋든 전에는 쿼리문에서 in array 같은 내용으로 작업을했던것 같은데

속도문제도있고 등등 패스하고 

find_in_set 을 써보기로했다

일단 find_in_set 은 특정칼럼에서 내가 원하는 값이 있는지 체크하는? 그정도로 이해했다

근데 이게 검색하는값이 배열이여버렸다 

그래서 다른방법을 찾을까하다가

find_in_set 자체가 쿼리문이 크게 무겁지않다는 내용이 있어서

그냥 배열수로 for문 돌려서 쿼리를 날려버렸다

일단 쿼리문은 

if($_GET['wr_1'])
{
    $wr_1_cnt = count($_GET['wr_1']);
    
    $sql_search.= " and ( ";
    
    for($t=0; $t<$wr_1_cnt; $t++)
    {
        if($t == 0)
        {
            $or = '';    
        }
        else
        {
            $or = 'or';
        }
        
        $sql_search.= " {$or} find_in_set('{$_GET['wr_1'][$t]}', local) ";
    }
    
    $sql_search.= " ) ";
}

 

이런식으로 local 칼럼에 wr_1값이 있으면~~~ 식으로 작성했다

왠만큼 잘나오니 일단 만족~!

728x90
반응형

+ Recent posts