자동메뉴 깔끔하게 만들기??? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

자동메뉴 깔끔하게 만들기??? 정보

자동메뉴 깔끔하게 만들기???

본문

자동메뉴  사용중입니다.
서브메뉴 없이 사용하려는데. 정확하게 어디를 지워야할지 모르겠습니다.
몇군데만 지우니깐 계속 오류나서요,
고수님들 좀 도와주십시요,
 
 
아래 소스입니다.
 
 
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
/////////////////////////////////////////////////////////////////////
// FF,msie호환 그룹 및 게시판 자동메뉴 - 플록
// CSS로 구현 그룹 및 게시판의 수직,수평 배열의 융통성 확보
//global start
echo "<div id='global'>\n";
    //접근가능그룹 여분필드 1 순서로 추출
    $sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE  (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0'  ORDER BY a.gr_1";
   
    // 제외그룹설정 root님
    // html , banner , guest 라는 그룹은 제외시킴
    $sql = " select * from $g4[group_table] where gr_id not in ('html', 'banner', 'z7') order by gr_1";
 
    $result = sql_query($sql);
    for ($i=0; $row=sql_fetch_array($result); $i++){
    //group
    echo "<div id='group'>\n";
    if ($row[gr_id] == $gr_id) {// 해당 그룹 스타일 및 링크
        echo "<span class='group_subject' onmouseover=\"show('$row[gr_id]')\" onmouseout=\"hide('$row[gr_id]')\"><a href='$g4[bbs_path]/board.php?bo_table=$row[gr_id]_1' class='on' >$row[gr_subject]</a></span>\n";
    } else { // 그외 그룹 스타일 및 링크
        echo "<span class='group_subject' onmouseover=\"show('$row[gr_id]')\" onmouseout=\"hide('$row[gr_id]')\"><a href='$g4[bbs_path]/board.php?bo_table=$row[gr_id]_1' class='off' >$row[gr_subject]</a></span>\n";
    }
    //board
    echo "<div id='$row[gr_id]' class='board' onmouseover=\"show('$row[gr_id]')\" onmouseout=\"hide('$row[gr_id]')\">\n";
    //게시판 권한 설정 적용, 전체 검색사용에 체크된 게시판만 검색순서에 따라 추출
    $sql1 = " select bo_subject, bo_table from $g4[board_table] where (bo_list_level <= $member[mb_level]) and (gr_id = '$row[gr_id]') and bo_use_search = '1' order by bo_order_search";
    $result1 = sql_query($sql1);
    for ($i1=0; $row1=sql_fetch_array($result1); $i1++) {
        //해당 게시판일때 스타일 적용
        if ($row1[bo_table] == $bo_table){
            echo "<span class='board_subject'><a href='$g4[bbs_path]/board.php?bo_table=$row1[bo_table]' class='on'><img src='$g4[path]/include/mainmenu/img/mmenu_icon.gif' border=0> $row1[bo_subject]</a></span>\n";
        }else{ //나머지 게시판의 스타일
            echo "<span class='board_subject'><a href='$g4[bbs_path]/board.php?bo_table=$row1[bo_table]' class='block'><img src='$g4[path]/include/mainmenu/img/mmenu_icon.gif' border=0> $row1[bo_subject]</a></span>\n";
        }
    }
    echo "</div>\n"; //board end
    echo "</div>\n"; //group end
}
echo "</div>\n"; // global menu end
echo "<div style='clear: both;'></div>"; // 메뉴끝 줄 바꿈, 겹치기 방지
?>
<script language="JavaScript">
function getObject(objectId) {
// checkW3C DOM, then MSIE 4, then NN 4. pearly님 공개 소스코드
    if(document.getElementById && document.getElementById(objectId)) {
    return document.getElementById(objectId);
    }
    else if (document.all && document.all(objectId)) {
    return document.all(objectId);
    }
    else if (document.layers && document.layers[objectId]) {
    return document.layers[objectId];
    } else {
    return false;
    }
}
function show(id) {
getObject([id]).style.visibility="visible";
}
function hide(id) {
getObject([id]).style.visibility="hidden";
}
</script>
 
<style>
/*여기서부터 시각적인 부분에 대한 수정을 해봅니다.
아래 소스에서 float, width 처럼 파란색으로 보여지는 속성을 키워드로
CSS 도움말 파일(팁&강좌에 있음)에서 검색해보면서 해당속성에 대한 옵션을 익힙니다.*/
#global { /*전체메뉴 가장자리를 감싸는 영역*/
float:center;/*왼쪽정렬*/
width:100%;/*너비 필요시 300px 혹은 300 처럼 픽셀로 지정가능*/
height:35px;/*메뉴 전체높이*/
margin:0 0 0 0; /*외부여유 - 시계방향 top, right, bottom, left 공통*/
padding:0 0 0 0;/*내부여유*/
border-width:0 0 0 0;/*테두리 두께*/
border-style:solid;/*테두리 스타일 dotted등 여러 스타일을 줄수있음*/
border-color:transparent/*테두리 색상 #000000처럼 주어도 무방*/;
background-color:transparent/*배경 색상 마찬가지*/;
position:relative;/*absolute; top:22; left:0; 상대,절대위치 설정 - 이곳 메뉴에서는 그대로 두고 메뉴를 불러오는 문서에서 전체 위치를 잡
아주면 됩니다*/
}
#group { /*그룹메뉴 영역- 그룹제목에 테두리를 주고싶다면 border-width:1 1 1 1; */
float:left;
width:100; overflow:visible;/*그룹메뉴 너비, overflow:visible; 내용이 넘칠경우 영역을 밀어내며 표시됨 - 그외 여러옵션이 있음*/
height:35px;
padding:0 0 0 0;
border-width:0 0 0 0;
border-style:solid;
border-color:transparent;
background-color:transparent; /*배경투명*/
position:relative; top:0; left:0;
}
.group_subject { /*그룹제목 스타일*/
padding-top:0px;
color:silver;
font-weight:bold;
height:35px;
text-align:center;
cursor:pointer;
display:block;
}
.board { /*게시판 레이어 영역 z-index 상위 호출문서 에서 지정*/
border-width:1 1 1 1; /*서브메뉴 테두리두께*/
border-style:solid;
border-color:#999999; /*서브메뉴 테두리 칼라*/
background-color:#ffffff;
padding:0 0 3 0;
visibility:hidden;
position:absolute; top:17; left:5;
}
.board_subject { /*게시판 제목 스타일*/
height:15px;
width:150px;
padding:6 0 2 10;
border-bottom-width:1;
border-bottom-color:#dddddd; /*서브메뉴 구분선*/
border-bottom-style:dotted;
display:block; /*포인터 영역 확대*/
}
a.block { /*게시판 제목 링크 스타일*/
width:100%; /*block 설정시 너비 빼먹으면 msie에서 안먹힘*/
height:100%;
display:block; /*포인터 영역 확대*/
}
a.on:link, a.on:visited, a.on:active { /*해당 그룹 강조*/
color:#e8ae11;
}
a.on:hover { /*마우스를 올렸을때 폰트 및 배경색상*/
color:#e8ae11;
background-color:transparent;
padding:0 0 0 0;
}
a.off:link, a.off:visited, a.off:active { /*일반 그룹*/
color:#ffffff;
}
a.off:hover { /*마우스를 올렸을때 폰트 및 배경색상*/
color:#e8ae11;
background-color:transparent;
padding:0 0 0 0;
}
</style>
  • 복사

댓글 전체

<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<?
$sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE  (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0'  ORDER BY a.gr_1";
$sql = " select * from $g4[group_table] where gr_id not in ('html', 'banner', 'guest') order by gr_1";
//$sql = " select  gr_id, gr_subject from $g4[group_table] where gr_id not in ($except) order by gr_subject desc ";
$rst1 = sql_query($sql);

while ($row=sql_fetch_array($rst1)) {

if($cells%6==0)
echo "</tr><tr>";

echo "<td valign='top' align='center'>";
echo "<table width='80' cellpadding='0' cellspacing='0' border='0'>";
echo "<tr><td align='center' height='30'><strong><a href='$g4[bbs_path]/group.php?gr_id=$row[gr_id]'><font color=#ffffff>$row[gr_subject]</font></a></strong></td></tr>"; // 그룹명 출력

$sql2 = " select * from $g4[board_table] where gr_id = '$row[gr_id]' order by bo_order_search ";
$rst2 = sql_query($sql2);
$cells++;

echo "</table>";
echo "</td>";
}
?>
</tr>
</table>
© SIRSOFT
현재 페이지 제일 처음으로