테스트 사이트 - 개발 중인 베타 버전입니다

등록된 브랜드명(It_brand) 셀렉트로 뽑아오기

· 5년 전 · 5164 · 37
2020-04-25 10;28;24.PNG
작업중에 구현했던부분 공유 합니다.

상품 등록시 입력한 브랜드명(It_brand)을 셀렉트로
뽑아오는 방법 입니다. 브랜드 검색을 만들거나 브랜드 바로가기 등으로
활용하면 좋을것 같습니다.

중복되는 브랜드명을 한개로 묶어주기위해 group by 를 사용했고 정렬은 asc 입니다.

아래 쿼리문과 for문을 넣어주고,

[code]
<?php
function get_brand_view($fild, $it_id)
{
$sql = " select * from g5_shop_item group by it_brand order by it_brand asc";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$str .= "<option value='$row[it_brand]'";
$str .= ">$row[it_brand]</option>";
}
return $str;
}
?>
[/code]

출력시킬 곳에

[code]
<select>
<option value="">브랜드</option>
<?php echo get_brand_view($fild, $it_id) ?>
</select>
[/code]


를 넣어주면 끝입니다.

첨부된 캡쳐와 같이 좀더 응용해서 브랜드검색 등으로 활용할 수 있고
g5_shop_item 테이블에 있는 다른 정보들도 컬럼명만 변경 또는 추가 하면
쉽게 출력할 수 있습니다~

<select> 대신 checkbox 등으로도 활용할 수 있겠지요!

감사합니다.

댓글 작성

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

로그인하기

댓글 37개

혹시 이걸 이용해서 브랜드명을 상품분류쪽에서 태그형식으로 구분할 수 있을까요?
체크박스형식으로 체크하면 그 브랜드만 모아서 보여준다거나..
4년 전
네 충분히 가능합니다.
추출하는 부분은 셀렉트가 아닌 체크박스 형태로 뽑아주고
체크시 ajax 를 이용한 처리나 클릭이벤트로 가능하세요~
4년 전
인자에 $fild, $it_id가 들어가는 이유를 알 수 있나요?
4년 전
상황에 맞게 수정해서 사용하시면 되세요~
다른데 쓰던거를 가져와서 쿼리만 변경 한거라 ㅠ
4년 전
네, 감사합니다.
4년 전
네 감사합니다~
@펄스나인 정말 좋은 자료 감사합니다. 셀렉트박스에
it_brand값이 없는것은 "미분류",
전체를 볼수있는 "전체보기"
를 추가하고싶은데 어떻게 해야할까요? ㅠㅜㅠ
4년 전
@칭따오

미분류 라는 셀렉트를 보여주는거보다는 필터 용도라면
분류가 없는건 안보여주는게 맞을거같은데 음.

암튼 it_brand 값이 없을때 조건을 주면 될거같습니다.

if ($row[it_brand] == '') {
$str .= "<option value=''";
$str .= ">미분류</option>";
} else {
$str .= "<option value='$row[it_brand]'";
$str .= ">$row[it_brand]</option>";
}

와 같은식으로 해줘야될거같네요~

전체보기가 셀렉트시에 url 이동을 말씀하시는 거라면
셀렉트에 on change 이벤트를 걸어서 선택시에 url 이동을 할 수 있게끔
하나 추가해주면 되겠네요~

onchange 이벤트를 <select>에 걸어주고
<?php echo get_brand_view($fild, $it_id) ?>
아래쪽에 option을 하나 추가하면 될거같습니다.
<option value='주소'>전체보기</option>

다만 select에 이벤트를 거는 경우는
다른 <option>에도 적용이 되니 애매하긴하네요 ㅠ

검색 버튼이 따로 존재하고 form으로 셀렉트값을 넘기시는 거면
value를 공백으로 넣으시면 될것 같습니다.
@펄스나인 감사합니다 도움이 많이 되었습니다 해결했네요 ㅠㅠ 펄스나인님 덕분에 쉽게 list.php에서 브랜드별로 필터링하여 볼수있도록 되었네요

게시글 목록

번호 제목
2503
2501
2497
2495
2491
2490
2489
2486
2484
2483
2481
2476
2475
2474
2472
2469
2467
2466
2465
2464
2463
2460
2459
2456
2449
2446
2441
2420
2419
2417