카테고리 쉽게 고르기 4차까지 > 영카트5 팁자료실

영카트5 팁자료실

카테고리 쉽게 고르기 4차까지 정보

카테고리 쉽게 고르기 4차까지

본문

4차 카테고리까지 만들었고,
1차 2차 3차 카테고리 클릭시 움직이는 스크립트를 각각 넣었어요.
n차 까지 알아서 때다 쓰시면 됩니당 ㅎ

itemform.php에서
카테고리 들고오는 부분은 conv_selected_option() & $category_select를 이용해서 넣으면 좋아요 ㅎ
어떤 소스가 들어가야 된다는 걸 나타내기 위해 그냥 소스로 넣었어요 ㅎ



itemform.php


<div id="cate1">
<select size="15" name="ca_id" id="caa_id" class="cid" >
	<?php
	$sql_ca_id1="SELECT ca_id, ca_name FROM g5_shop_category where length(ca_id) = '2' order by ca_id ";

	$result_ca_id1 = sql_query($sql_ca_id1);
	for($i=0; $row_ca_id1 = sql_fetch_array($result_ca_id1); $i++){
		?>
		<option value=<?php echo $row_ca_id1[ca_id]; ?> <?php if($row_ca_id1[ca_id] == substr($ca_id, 0, 2)) echo 'selected'?>><?php echo $row_ca_id1[ca_name]; ?></option>
	<?php } ?>
</select>
</div>

<div id="cate2" >
<?if($ca_id && strlen($ca_id) >= 4){?>
<select size="15" name="ca_id" id="caa_id2" class="cid"  >
	<?php
	$sql_ca_id1="SELECT ca_id, ca_name FROM g5_shop_category where length(ca_id) = '4' order by ca_id ";

	$result_ca_id1 = sql_query($sql_ca_id1);
	for($i=0; $row_ca_id1 = sql_fetch_array($result_ca_id1); $i++){
		?>
		<option value=<?php echo $row_ca_id1[ca_id]; ?> <?php if($row_ca_id1[ca_id] == substr($ca_id, 0, 4)) echo 'selected'?>><?php echo $row_ca_id1[ca_name]; ?></option>
	<?php } ?>
</select>
<?php } ?>
</div>

<div id="cate3">
<?if($ca_id && strlen($ca_id) >= 6){?>
<select size="15" name="ca_id" id="caa_id3" class="cid" >
	<?php
	$sql_ca_id1="SELECT ca_id, ca_name FROM g5_shop_category where length(ca_id) = '6' order by ca_id ";

	$result_ca_id1 = sql_query($sql_ca_id1);
	for($i=0; $row_ca_id1 = sql_fetch_array($result_ca_id1); $i++){
		?>
		<option value=<?php echo $row_ca_id1[ca_id]; ?> <?php if($row_ca_id1[ca_id] == substr($ca_id, 0, 6)) echo 'selected'?>><?php echo $row_ca_id1[ca_name]; ?></option>
	<?php } ?>
</select>
<?php } ?>
</div>

<div id="cate4">
<?if($ca_id && strlen($ca_id) >= 8){?>
<select size="15" name="ca_id" id="caa_id4" class="cid" >
	<?php
	$sql_ca_id1="SELECT ca_id, ca_name FROM g5_shop_category where length(ca_id) = '8' order by ca_id ";

	$result_ca_id1 = sql_query($sql_ca_id1);
	for($i=0; $row_ca_id1 = sql_fetch_array($result_ca_id1); $i++){
		?>
		<option value=<?php echo $row_ca_id1[ca_id]; ?> <?php if($row_ca_id1[ca_id] == substr($ca_id, 0, 8)) echo 'selected'?>><?php echo $row_ca_id1[ca_name]; ?></option>
	<?php } ?>
</select>
<?php } ?>

<script>
	$(document).ready(function() {
		$(document).on("click", "#caa_id", function() {
			var company_is = $('#caa_id').val();
			$.ajax({
				url: '/adm/ajax.category_select.php',
				type: 'post',
				data: { ca_id: $('#caa_id').val() ,  length: $('#caa_id').val().length },
				success: function(result) {
					var data = JSON.parse(result);
					if(data.success == 0) {
						console.log(data.msg);
					}else{
						$('#cate2').css('display', 'block');
						$('#cate2').html(data.data);
						$('#cate3').html('');
						$('#cate4').html('');
					}
				}
			});
		});


		$(document).on("click", "#caa_id2", function() {
			 var company_is = $('#caa_id2').val();
			$.ajax({
				url: '/adm/ajax.category_select.php',
				type: 'post',
				data: { ca_id: $('#caa_id2').val() ,  length: $('#caa_id2').val().length },
				success: function(result) {
					var data = JSON.parse(result);
					if(data.success == 0) {
						console.log(data.msg);
					}else{
						$('#cate3').css('display', 'block');
						$('#cate3').html(data.data);
						$('#cate4').html('');
					}
				}
			});
		});
		$(document).on("click", "#caa_id3", function() {
			 var company_is = $('#caa_id3').val();
			$.ajax({
				url: '/adm/ajax.category_select.php',
				type: 'post',
				data: { ca_id: $('#caa_id3').val() ,  length: $('#caa_id3').val().length },
				success: function(result) {
					var data = JSON.parse(result);
					if(data.success == 0) {
						console.log(data.msg);
					}else{
						$('#cate4').css('display', 'block');
						$('#cate4').html(data.data);
					}
				}
			});
		});
	});
</script>


ajax.category_select.php

<?php
include_once('./_common.php');

if(!empty($_POST['ca_id'])){
	if($_POST['length']=='2'){
		$qry = "SELECT ca_id, ca_name FROM g5_shop_category WHERE ca_id like '".$_POST['ca_id']."%' and ca_id != '".$_POST['ca_id']."' and length(ca_id) = '4' ";
	}elseif($_POST['length']=='4'){
		$qry = "SELECT ca_id, ca_name FROM g5_shop_category WHERE ca_id like '".$_POST['ca_id']."%' and ca_id != '".$_POST['ca_id']."' and length(ca_id) = '6'  ";
	}elseif($_POST['length']=='6'){
		$qry = "SELECT ca_id, ca_name FROM g5_shop_category WHERE ca_id like '".$_POST['ca_id']."%' and ca_id != '".$_POST['ca_id']."' and length(ca_id) = '8'  ";
	}
}

$qid = sql_query($qry);
$num_rows = sql_num_rows($qid);

if($num_rows > 0) {

if($_POST['length']=='2'){
    $output = '<select name="ca_id" size="15" id="caa_id2"class="cid"  >';
}elseif($_POST['length']=='4'){
    $output = '<select name="ca_id" size="15" id="caa_id3"class="cid" >';
}elseif($_POST['length']=='6'){
    $output = '<select name="ca_id" size="15" id="caa_id4"class="cid" >';
}
    for ($i = 0; $row = sql_fetch_array($qid); $i++)
    {
        $output .= '<option value="'.$row['ca_id'].'">'.$row['ca_name'].'</option>';
    }
    $output .= '</select>';
    exit(json_encode(array('success' => '1', 'data' => $output,'site'=>$_POST['ca_id'])));
} else {
   die(json_encode(array('success' => '0', 'msg' => '하위 카테고리가 없습니다. ')));
}
?>
추천
5
  • 복사

댓글 6개

좋네요 ^^ 공개 감사합니다~
click은 방향키가 안먹어서 change 로 바꿔 주었습니다!

$(document).on("change", "#caa_id", function() {

----

© SIRSOFT
현재 페이지 제일 처음으로