분류(카테고리)관리가 필요할때.
여러개의 분류가 필요할 때,
분류관리만 따로 관리자에 넣어서 사용할려고 만들었습니다.
아래내용은 _common.php에도 들어있습니다.
==============================================================
1. 데이타베이스에 테이블을 생성한다.
CREATE TABLE IF NOT EXISTS `cul_pg_div` (
`cpd_code` varchar(255) NOT NULL DEFAULT '0' COMMENT '분류코드 (01:1단계, 0101:2단계...)',
`cpd_name` varchar(255) DEFAULT NULL COMMENT '분류명',
PRIMARY KEY (`cpd_code`)
) ENGINE=InnoDB DEFAULT CHARSET=euckr COMMENT='구분 - 분류정보';
2. 그누보드/config.php 에 아래를 추가한다.
$g4['tb_pg_div'] = "cul_pg_div"; // 분류정보
3. 관리자 메뉴에 추가
admin.menu400.php 를 생성하고, 아래를 넣어준다.
$menu["menu400"] = array (
array("400000", "관리자", ""),
array("400001", "분류관리", "$g4[admin_path]/base/div.php"),
array("-"),
);
4. 그누보드/adm/base 폴더를 생성한다.
5. 첨부한 파일을 4번에 생성한 폴더에 넣는다.
6. 관리자 접속을 하여 확인한다.
7. 분류가 필요한 게시판 스킨에 알아서 작업한다.
======================================
스킨 write.skin.php 사용시
include_once ("$g4[admin_path]/base/config.php");
<script>
var data1 = new Array();
<?
$array1Data = FuncDivData("10"); // 2단계 분류 가져오기
for ($i=0;$i < $array1Data[0];$i++) {
echo "data1[" . $i . "] = '" . $array1Data[$i]["cpd_code"] . "'; ";
}
?>
var data1_kor = new Array();
<?
$array1Data = FuncDivData("10"); // 2단계 분류 가져오기
for ($i=1;$i <= $array1Data[0];$i++) {
echo "data1_kor[" . $i . "] = '" . $array1Data[$i]["cpd_name"] . "'; ";
}
?>
<? for ($i=1;$i <= $array1Data[0];$i++) { ?>
var data_<?=$array1Data[$i]["cpd_code"];?> = new Array();
<?
$array2Data = FuncDivData($array1Data[$i]["cpd_code"]); // 3단계 분류 가져오기
for ($j=1;$j <= $array2Data[0];$j++) {
echo "data_" . $array1Data[$i]["cpd_code"] . "[" . $j . "] = '" . $array2Data[$j]["cpd_code"] . "'; ";
}
?>
var data_kor_<?=$array1Data[$i]["cpd_code"];?> = new Array();
<?
$array2Data = FuncDivData($array1Data[$i]["cpd_code"]); // 3단계 분류 가져오기
for ($j=1;$j <= $array2Data[0];$j++) {
echo "data_kor_" . $array1Data[$i]["cpd_code"] . "[" . $j . "] = '" . $array2Data[$j]["cpd_name"] . "'; ";
}
?>
<? } ?>
function area1change(data) {
var area = new Array();
var area_kor = new Array();
switch (data) {
<? for ($i=1;$i <= $array1Data[0];$i++) { ?>
case "<?=$array1Data[$i]["cpd_code"];?>" :
area = data_<?=$array1Data[$i]["cpd_code"];?>;
area_kor = data_kor_<?=$array1Data[$i]["cpd_code"];?>; break;
<? } ?>
}
document.getElementById("area2").length = 0;
for (i=0;i < area.length;i++) {
document.getElementById("area2").options[i] = new Option(area_kor[i], area[i]);
}
}
</script>
<select name="wr_1" id="wr_1" onchange="area1change(this.value);">
<?
$wr_1 = $write["wr_1"];
if (!$wr_1) $wr_1 = "1023"; // 초기 선택값
$array1Data = FuncDivData(substr($wr_1, 0, 2)); // 2단계 분류 가져오기, 10:1단계 지역
// $FArray:배열, $Fchoice:선택될값, $Fcode:code필드명, $Fname:이름필드명
echo FuncOption ($array1Data, $write["wr_1"], "cpd_code", "cpd_name");
?>
</select>
<select name="area2" id="area2">
<?
$array2Data = FuncDivData($wr_1); // 3단계 분류 가져오기
//$FArray:배열, $Fchoice:선택될값, $Fcode:code필드명, $Fname:이름필드명
echo FuncOption ($array2Data, $wr_2, "cpd_code", "cpd_name");
?>
</select>
분류관리만 따로 관리자에 넣어서 사용할려고 만들었습니다.
아래내용은 _common.php에도 들어있습니다.
==============================================================
1. 데이타베이스에 테이블을 생성한다.
CREATE TABLE IF NOT EXISTS `cul_pg_div` (
`cpd_code` varchar(255) NOT NULL DEFAULT '0' COMMENT '분류코드 (01:1단계, 0101:2단계...)',
`cpd_name` varchar(255) DEFAULT NULL COMMENT '분류명',
PRIMARY KEY (`cpd_code`)
) ENGINE=InnoDB DEFAULT CHARSET=euckr COMMENT='구분 - 분류정보';
2. 그누보드/config.php 에 아래를 추가한다.
$g4['tb_pg_div'] = "cul_pg_div"; // 분류정보
3. 관리자 메뉴에 추가
admin.menu400.php 를 생성하고, 아래를 넣어준다.
$menu["menu400"] = array (
array("400000", "관리자", ""),
array("400001", "분류관리", "$g4[admin_path]/base/div.php"),
array("-"),
);
4. 그누보드/adm/base 폴더를 생성한다.
5. 첨부한 파일을 4번에 생성한 폴더에 넣는다.
6. 관리자 접속을 하여 확인한다.
7. 분류가 필요한 게시판 스킨에 알아서 작업한다.
======================================
스킨 write.skin.php 사용시
include_once ("$g4[admin_path]/base/config.php");
<script>
var data1 = new Array();
<?
$array1Data = FuncDivData("10"); // 2단계 분류 가져오기
for ($i=0;$i < $array1Data[0];$i++) {
echo "data1[" . $i . "] = '" . $array1Data[$i]["cpd_code"] . "'; ";
}
?>
var data1_kor = new Array();
<?
$array1Data = FuncDivData("10"); // 2단계 분류 가져오기
for ($i=1;$i <= $array1Data[0];$i++) {
echo "data1_kor[" . $i . "] = '" . $array1Data[$i]["cpd_name"] . "'; ";
}
?>
<? for ($i=1;$i <= $array1Data[0];$i++) { ?>
var data_<?=$array1Data[$i]["cpd_code"];?> = new Array();
<?
$array2Data = FuncDivData($array1Data[$i]["cpd_code"]); // 3단계 분류 가져오기
for ($j=1;$j <= $array2Data[0];$j++) {
echo "data_" . $array1Data[$i]["cpd_code"] . "[" . $j . "] = '" . $array2Data[$j]["cpd_code"] . "'; ";
}
?>
var data_kor_<?=$array1Data[$i]["cpd_code"];?> = new Array();
<?
$array2Data = FuncDivData($array1Data[$i]["cpd_code"]); // 3단계 분류 가져오기
for ($j=1;$j <= $array2Data[0];$j++) {
echo "data_kor_" . $array1Data[$i]["cpd_code"] . "[" . $j . "] = '" . $array2Data[$j]["cpd_name"] . "'; ";
}
?>
<? } ?>
function area1change(data) {
var area = new Array();
var area_kor = new Array();
switch (data) {
<? for ($i=1;$i <= $array1Data[0];$i++) { ?>
case "<?=$array1Data[$i]["cpd_code"];?>" :
area = data_<?=$array1Data[$i]["cpd_code"];?>;
area_kor = data_kor_<?=$array1Data[$i]["cpd_code"];?>; break;
<? } ?>
}
document.getElementById("area2").length = 0;
for (i=0;i < area.length;i++) {
document.getElementById("area2").options[i] = new Option(area_kor[i], area[i]);
}
}
</script>
<select name="wr_1" id="wr_1" onchange="area1change(this.value);">
<?
$wr_1 = $write["wr_1"];
if (!$wr_1) $wr_1 = "1023"; // 초기 선택값
$array1Data = FuncDivData(substr($wr_1, 0, 2)); // 2단계 분류 가져오기, 10:1단계 지역
// $FArray:배열, $Fchoice:선택될값, $Fcode:code필드명, $Fname:이름필드명
echo FuncOption ($array1Data, $write["wr_1"], "cpd_code", "cpd_name");
?>
</select>
<select name="area2" id="area2">
<?
$array2Data = FuncDivData($wr_1); // 3단계 분류 가져오기
//$FArray:배열, $Fchoice:선택될값, $Fcode:code필드명, $Fname:이름필드명
echo FuncOption ($array2Data, $wr_2, "cpd_code", "cpd_name");
?>
</select>
|
댓글을 작성하시려면 로그인이 필요합니다.
그누4 스킨
5,847건스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다. 스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y 그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.
댓글 14개
이 스킨?? 을 잘 활용하면 일반 홈페이지에 쓸 메뉴 구축도 가능할꺼같네요..!!
그런데, 소스수정을 좀 보셔야 할 듯합니다.
순서는 앞에 코드값이 있는데,
코드값 2자리씩 구분을 해서 순차적으로 순서를 매기고 있습니다.
코드번호를 이용해서 순서를 적용하시면 됩니다.
드래그로는 안될 것 같습니다.
4차 분류까지만 좀 알려주실수 있으시나요?
굉장히 먼가 좋아보이는데...어떤식으로 적용하고 써먹어야하는지 모르겠네요...
영카트를 다뤄본적도 없고....그냥 막상 좋아보이는데 어떤식으로 써야할지 모르겠음...