분류 2차 현재페이지 값 채택완료

그누5쓰고있어요...ㅠ

링크에서 처럼 2단 분류를 사용하고 있는데

지금 상태가 

list.skin.php에서

1차 카테로그 / 2차 카테로그 들고오는 부분

<?
?>
 $cat2 = explode('|',$board[bo_2]);
 for($i = 0; $i < count($cat2); $i++){
 $cat2[$i] = explode(',',$cat2[$i]);
 }
?>​

 

보여지는 부분

 

 <?if($cat1){?>
 <?}?>
  <ul id="bo_cate_ul">
   <li>
    <a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>" id="bo_cate_on" <?if($wr_1 == '' || !$wr_1){?>style="background-color:#ccc;"<?}else{}?>>전체</a>
   </li>
  <?for($i = 0; $i < count($cat1); $i++){?>
   <li>
    <a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>&wr_1=<?=$cat1[$i]?>" class="c_<?=$i?>" id="bo_cate_on"
    <?if($wr_1 == $cat1[$i]){?>style="background-color:#ccc;"<?}else{}?>><?=$cat1[$i]?></a>
    <ul>
     <?for($j = 0; $j < count($cat2[$i]); $j++){?>
     <li>
      <a href="<?=G5_URL?>/bbs/board.php?bo_table=<?=$bo_table?>&wr_1=<?=$cat1[$i]?>&wr_2=<?=$cat2[$i][$j]?>"
      <?if($wr_2 == $cat2[$i][$j]){?>style="background-color:#3D3D3D;color:#fff;"<?}else{}?>>
       <?=$cat2[$i][$j]?>
      </a>
     </li>
     <?}?>     
    </ul>
   </li>
 <?}?>
  </ul>
 </nav>
 <?}?>​

이런형태인데 이렇게 되면  밑에처럼 다뜨는데 제가 하고싶은건

 

 

9065da9203bdd718c8ae4a4515bcab18_1421377716_7726.gif 

 

 

 

 

제가 하고 싶은건 현재페이지가 1차 카테고리이고 위에 보여지는 부분카테고리는 2차로 만들고 싶은데.... 밑에 형식처럼요.ㅠㅠ 방법이..

9065da9203bdd718c8ae4a4515bcab18_1421377821_0748.gif 

 

 

답변 3개

채택된 답변
+20 포인트

Copy
<!-- 게시판 카테고리 시작 { -->    <!-- } 게시판 카테고리 끝 --> function change_page(va){  if(va.length>1){  loc=location.href.replace(/&sca=[@]{0,}[ㄱ-힣]{0,}/g,"");  location.href=loc+"&sca="+va;  } } <? if(!$_GET['sca']){ echo "change_page('전체')"; }?> </script> <?   $_GET['sca']=preg_replace("/@{1,}/","",$_GET['sca']);  $t=explode("|",$board['bo_category_list']);  $cate_arr="";  foreach($t as $k){   if(!preg_match("/@{1,}/",$k)){    $cate_arr[$k]="";    $data1=$k;    if($k==$_GET['sca']){ $depth=1; }   };   if(preg_match("/@{1,}/",$k) && !preg_match("/@{2,}/",$k)){    $m=preg_replace("/@/","",$k);    $cate_arr[$data1][$m]="";    $data2=$m;    if($m==$_GET['sca']){ $depth=2; }   }   if(preg_match("/@{2,}/",$k)){    $m=preg_replace("/@{2,}/","",$k);    $cate_arr[$data1][$data2][]=$m;    if($m==$_GET['sca']){ $depth=3; $depthv=$data2;}   }  } ?> <select onchange="change_page(this.value)"> <?  foreach($cate_arr as $key => $value){   if($key==$_GET['sca']) $mm=$key;   foreach($value as $key2 => $value2){    if(is_array($value2)){     foreach($value2 as $key3 => $value3){      if($value3==$_GET['sca']){       $mm=$key;      }     }    }    if($key2==$_GET['sca']){     $mm=$key;    }   } ?>   <option value="<?=$key?>"<?=$mm==$key?' selected="selected"':''?>><?=$key?></option> <?  } ?> </select> <? if($_GET['sca']!="전체" && $_GET['sca']){ ?> <select onchange="change_page('@'+this.value)">   <option value="">하위 메뉴를 선택하세요</option> <?   foreach($cate_arr[$mm] as $key => $value){ ?>   <option value="<?=$key?>"<?=($_GET['sca']==$key)||($depthv==$key)?' selected="selected"':''?>><?=$key?></option> <?  } ?> </select> <? } ?> <? if( ($depth==2 && count($cate_arr[$mm][$_GET['sca']])>1) || $depth==3){ ?> <select onchange="change_page('@'+this.value)">   <option value="">하위 메뉴를 선택하세요</option> <?  foreach($cate_arr[$mm][$_GET['sca']] as $value){ ?>   <option value="<?=$value?>"<?=$_GET['sca']==$value?' selected="selected"':''?>><?=$value?></option> <?  } ?> <?  foreach($cate_arr[$mm][$depthv] as $value){ ?>   <option value="<?=$value?>"<?=$_GET['sca']==$value?' selected="selected"':''?>><?=$value?></option> <?  } ?> </select> <? } ?>    <!-- } 게시판 카테고리 끝 -->​

혹시 코드가 필요하실까봐... list.skin.php입니다.

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

답변에 대한 댓글 1개

글쓰기할때 방식은 어떻게 되는지? ;;

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

작업중인 사이트라 보여드리진 못하구요.

 

36e28c1f4456c81b05eef96018094c33_1421386799_8385.png

36e28c1f4456c81b05eef96018094c33_1421386873_1845.png 

 

 요런 느낌입니다. 아직 디자인도 안입혀져서 눙물이 ㅠㅠ

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

답변에 대한 댓글 1개

제가 왕초보라... 셀레트문을 제가 원하는형식으로 꾸미고싶은데...ㅠㅠㅠ 도와주세요.ㅠㅠ

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

현재 작업중인 사이트에서 3단카테고리를 제작하여 사용하고 있는데요, 간단하게 원리만 말씀드리자면

1차분류|@2차분류|@@3차분류|@@3차분류2|@@3차분류|@2차분류2|@2차분류3|@@3차분류

 

이런식으로 분류를 만들고 내부적으로 분류를 잘라내서 보여주는 방식입니다.

 

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

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

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

로그인
🐛 버그신고