html의 class명을 php의 변수에 담아 사용할 수 있나요?
본문
위의 화면과 같이 카테고리를 누르면 최신 상품 중에 해당 카테고리의 상품만 나오게 하고싶은데요.
<div class="container listtype_pc_container">
<div class="row" style="margin:0 auto 10px auto;">
<div class="col-md-2 col-sm-2">
<ul class="best_nav">
<li class="active" role="presentation"><a href="#" data-toggle="tab" class="test1" >전체</a></li>
<?php
$sql = "select * from g5_shop_category where length(ca_id) < 4";
$result = sql_query($sql,false);
for ($i=0; $row = sql_fetch_array($result); $i++) { ?>
<li role="presentation" ><a href="#" data-toggle="tab" class="<?php echo $row['ca_id']?>"><?php echo $row['ca_name']?></a></li>
<?php } ?>
</ul>
</div>
</div>
</div>
<script>
$(document).ready(function(){
var ca_id = $('.listtype_pc_container li.active').find('a').attr('class');
console.log(ca_id);
})
</script>
<?php
/**
* 리스트 유형별로 출력
*/
$list_file = $skin_dir.'/'.$skin;
if (file_exists($list_file)) {
/**
* 총몇개 = 한줄에 몇개 * 몇줄
*/
$items = $list_mod * $list_row;
/**
* 페이지가 없으면 첫 페이지 (1 페이지)
*/
if ($page < 1) $page = 1;
/**
* 시작 레코드 구함
*/
$from_record = ($page - 1) * $items;
$list = new item_list();
$list->set_type($type);
$list->set_list_skin($list_file);
$list->set_list_mod($list_mod);
$list->set_list_row($list_row);
$list->set_img_size($img_width, $img_height);
$list->set_is_page(true);
$list->set_order_by($order_by);
$list->set_from_record($from_record);
//----------------------20.09.09--------------------------------
$list->set_category($ca_id, 1);
//----------------------20.09.09 end ---------------------------
$list->set_view('it_img', true);
$list->set_view('it_id', false);
$list->set_view('it_name', true);
$list->set_view('it_cust_price', false);
$list->set_view('it_price', true);
$list->set_view('it_icon', true);
$list->set_view('sns', true);
$item_list = $list->run();
/**
* where 된 전체 상품수
*/
$total_count = $list->total_count;
/**
* 전체 페이지 계산
*/
$total_page = ceil($total_count / $items);
}
$qstr .= '&sort='.$sort;
$paging = $eb->set_paging('itemtype', $type, $qstr);
?>
소스는 이렇습니다.
li class명이 active라면 a태그의 class명을 받아와서 $ca_id라는 변수에 넣고
$ca_id를 $list->set_category($ca_id, 1); 에 넣어서 사용하고싶은데
html의 class명을 가져와서 php에서 쓸 수 있나요?
아니면 form문으로 값을 전송하는 방법 밖에 없나요 ?
그 외의 방법이 있다면 댓글 부탁드립니다!!!
$ca_id 자리에 10, 20, ... ,d0 처럼 값을 직접 넣으면 해당 카테고리 상품이 출력이 되더라구요.
이를 active 된 li의 하위태그인 a태그의 class명을 가져와서 쓰고싶습니다.
!-->답변 2
메뉴 active가 됐을때 내용을 바꾸싶으신것같은데 php는 한번만 읽어옵니다 그외 동적인 작업을 하고싶다면 ajax로 처리를 해야하죠
해당 메뉴에서 그냥 get값으로 처리해도됩니다 a태그에서 링크를 주소?ca_id=값 이런식으로 쓰고 넘어가면되는것이죠
클릭하게되는 주소 끝에 ?style=on 이런식으로 값을 넘기면
해당 페이지에서 $style 로 값을 받을수 있습니다.
답변을 작성하시기 전에 로그인 해주세요.