글작성시 분류 표시

글작성시 분류 표시

QA

글작성시 분류 표시

본문

그누보드 글작성시 분류를 표시해줄때 1번째 분류는 제외하고 2번째 분류부터만 선택할수 있게 표시해주고 싶습니다, 가령 게시판관리자에서 분류를 사과 | 망고 | 참외 3개를 입력했을때 글쓰기 화면에서는 1번째인 사과는 안나오게하고 망고와 참외 중에서만 선택할수 있게 해주고 싶습니다

밑이 write.skin.php의 분류관련 코드 입니다, 2번째 분류부터만 불러와 표시해주게 하려면 어떻게 해야하나요?

 

<? if ($is_category) { ?>

  

  <?

  $bInfo=mysql_fetch_array(mysql_query("select gr_id from g4_board where bo_table='$_GET[bo_table]' limit 1"));

  ?>

<script>

function myCate(cate){

}

 

function subCate(depth, kwd)

{

var postData;

if(depth==8){

postData="depth=8&cate3=<?=$write[wr_5]?>&bo_table=<?=$bo_table?>&hcate="+kwd;

}

    $.ajax({

        url:"<?=$g4[path]?>/subCate.php", // 요청할 url

        data:postData, // 전달할 데이터

        type:"post", // 데이터를 전달할 방식

        async:false, // 비동기 방식으로 할 것인가. true면 당연히 비동기, false면 동기

        success:function(retData){ // 요청에 성공했을 때 실행 될 함수부분

            if(retData && depth=='8'){

if(retData==0){

$("#cate9").html('');

$("#cate9").val('');

}else{

            $("#cate9").html(retData);

}

            }

        }

    });

}

 

 

$(window).load(function(){

  var haha=$("#ca_name").val();

  subCate(8, haha);  

});

</script>

<style>

.cates {

float:left;

margin-left:10px;

}

</style>

  <tr>

    <td style='padding-left:20px; height:30px;'>· 구분</td>

    <td><div class='cates' style='margin-left:0;'><select name=ca_name itemname="분류" id='ca_name' onchange="subCate(8, this.value);"><option value="">선택하세요</option><?=$category_option?></select></div><div id='cate9' class='cates' style='margin-left:0;display:none;'><select id='cate3s' name='wr_5' onchange='myCate(this.value)'><option value='0'>선택하세요</option></select></div></td></tr>

  <tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>

 

  <? } ?>

이 질문에 댓글 쓰기 :

답변 1

해당 게시판 스킨의 write.skin.php 파일 상단에 수정된 get_category_option 함수를 새로 만들어 적용하는 것이 전체 게시판에 영향을 미치지 않는 바람직한 방법이 될 것 같습니다.

write.skin.php 파일 상단에 다음과 같은 소스를 추가해보세요.


<?php
if (!defined('_GNUBOARD_')) exit;
 
function get_category_option2($bo_table='', $ca_name='')
{
   global $g5, $board, $is_admin;
   $categories = explode("|", $board['bo_category_list'].($is_admin?"|공지":""));
   $str = "";
   for ($i=0; $i<count($categories); $i++) {
      $category = trim($categories[$i]);
      if (!$category || $i==0) continue; //원본함수에서 변경한 부분
      $str .= "<option value=\"$categories[$i]\"";
      if ($category == $ca_name) {
         $str .= ' selected="selected"';
      }
      $str .= ">$categories[$i]</option>\n";
   }
   return $str;
}
 
if ($board['bo_use_category'])
   $category_option = get_category_option2($bo_table, $ca_name);
 

근데 위에 07번 줄에 관리자일경우 공지 나오게 하는것 없애고 싶은데 ($is_admin?"|공지":"") 만 지우면 안되는군요,  쩜까지 포함해서 .($is_admin?"|공지":"") 를 지워주니 이제 공지가 안나오는데 성공했습니다, 맞게한건가요?^^;

답변을 작성하시기 전에 로그인 해주세요.
전체 42
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT