검색 시 문자열을 포괄적으로 검색할 수 있을까요?
본문
질문자체가 좀 모호하긴한데.
특정단어 검색 시 정확히 그 특정단어를 입력하여야 검색이되며, 근사치로 단어를 검색하게되면 검색이 되지않습니다.
예를들면
제품안내 게시판에 제품번호가 '1234-5678' 인 제품을 검색 시
'1234-5678' 이렇게 검색을하면 검색이 가능하지만,
'12345678' 이렇게 근사치로는 검색이 되지않습니다.
검색조건을 근사치도 가능하도록 좀더 포괄적으로 가능할까요?
만약 위 방법이 어렵하고 한다면..
제품번호 '1234-5678' 을 검색할 시
'1234-' 다음에 소스를 건드려 '빈칸'을 강제적으로 넣게할 수 있을까요?
'1234- 빈칸 5678' 이렇게 검색하니 검색이 가능하더라구요.
고수님들의 도움을 요청합니다.
코로나19와 건강 조심하세요~
답변 2
검색어가 항상 일정하다면 스크립트나 소스를 건드려서 가능합니다.
문자열을 자른다음에 공백을 삽입하면 될듯합니다.
자바스크립트나 php 둘중에 아무거나 가능하고
php에서 앞문자열만 가저오는거는 substr(문자열, 0, 5) 면 앞에 4자만 가저오는 거예요.
그럼 아마 잘라서 합치면 되니깐
$searchStr = substr(문자열, 0,5).'- '.substr(문자열, 6); 이러면 될겁니다.
소스부분에서 검색어를 받아서 수정해주시면 되겠네요.
https://www.php.net/manual/en/function.substr 메뉴얼
검색을 어디서 하는건가요? 게시판인가요? 아니면 검색하는 부분을 웹페이지라두 알려주시면..
검색할부분을 웹으로 열어놓은 상태에서 페이지 소스보기로 보면 검색부분에 form 부분에 해당 파일 경로 가 있을거예요.
그부분에서 하셔야해고 개발자가 아니시라면 조금 노력이 필요합니다.
그누 5를 기준으로 bbs/search.php 에 상단에
$stx = strip_tags($stx); // 이줄 아래에
$stx = substr($stx, 0,5).'- '.substr($stx, 6); //<========= 이줄 삽입 하고 해보세요.
저도 최근에 일있어서 오는지라 5버전이라던가 여러가지 자세히 보지는 않고 알려드립니다.