2026, 새로운 도약을 시작합니다.

영카트 상품검색시 띄어쓰기 없이 할려면 어떻게 해야되나요? 채택완료

3년 전 조회 1,867

shop/search.php 소스인데요. 영카트 상품검색시 오늘 상품오늘상품 이렇게 띄어쓰기 없이 검색되게 할려면 어떻게 해야될까요? 무조건 상품입력시 했던 띄어쓰기를 다르게 인식하네요

오늘+상품이렇게 되네요 ㅠㅠ

고수님들 부탁드려요

Copy

답변 3개

채택된 답변
+20 포인트
$arr = explode(" ", $q);

수정

$arr[0]= trim($q);
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

남겨주신 대로 적용했는데 띄어쓰기 검색을 않했을때는 검색이 안되요
다음 처럼 수정해보세요
$concat[] = "a.it_name";
수정
$concat[] = "a.it_name";
$concat[] = "replace(a.it_name, ' ','')";
감사합니다. 지금 은 잘됩니다. 마지막 남겨주신댓글 너무 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

컴퓨터(프로그램)이

오늘상품을

오늘, 상품 이렇게 두 단어로 인식하게 하는 것은 단순한 작업이 아닙니다.

트릭을 쓰자면

상품 제목을 띄어쓰기 있는 것과 없는 것 두 개(이상)를 저장하고 나중에 문자열 검색하는 거죠.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

제가 상품에 띄어쓰기가 되어있어서 띄어쓰기 무관하게 검색이 되고 싶어서요.
방법은 인공지능 비슷한 것이 있거나
상품명을 띄어쓰기 없는 문자열로 추가 저장하거나
다른 방법은 안 떠오르네요.

댓글을 작성하려면 로그인이 필요합니다.

맨밑에보면 $sql 보이잖아요 거기 밑에 echo $sql;로 하면 쿼리 어떻게 나와요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

select b.ca_id, b.ca_name, count(*) as cnt from g5_shop_item a, g5_shop_category b where (a.ca_id = b.ca_id and a.it_use = 1 and b.ca_use = 1) and (concat(a.it_name,' ',a.it_explan2,' ',a.it_id,' ',a.it_basic) like '%쇼니%' and concat(a.it_name,' ',a.it_explan2,' ',a.it_id,' ',a.it_basic) like '%자견용%' ) group by b.ca_id order by b.ca_id 띄어쓰기해서 검색하면 상품이 나옵니다. 근데 띄어쓰기 없이 하면 안나옵니다.
띄어쓰기 않하면은 이렇게 나옵니다.
select b.ca_id, b.ca_name, count(*) as cnt from g5_shop_item a, g5_shop_category b where (a.ca_id = b.ca_id and a.it_use = 1 and b.ca_use = 1) and (concat(a.it_name,' ',a.it_explan2,' ',a.it_id,' ',a.it_basic) like '%쇼니%' and concat(a.it_name,' ',a.it_explan2,' ',a.it_id,' ',a.it_basic) like '%자견용%' ) group by b.ca_id order by b.ca_id

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고