좌측메뉴 구성시, 관리자용 링크를 중간중간에 표시하려고 합니다
현재 아래와 같이 좌측링크 메뉴를 구성해서 사용합니다.
이때, 관리자(레벨10이상)만 볼수있는 메뉴를 따로 표시하여
게시판링크메뉴 아래쪽에 표시하도록 했습니다.
<table align='center' width=90% cellpadding=0 cellspacing=0>
<?
$ys_menu=array(
"<a href=''>공지글</a>",
"<a href=''>게시판1</a>",
"<a href=''>게시판2</a>,
"<a href=''>게시판3</a>",
"<a href=''>게시판4</a>",
"<a href=''>게시판5</a>",
"<a href=''>게시판6</a>",
);
if($member[mb_level] >= '10') {
array_push($ys_menu,
"<a href=''>관리자메뉴1</a>",
"<a href=''>관리자메뉴2</a>",
"<a href=''>관리자메뉴3</a>",
"<a href=''>관리자메뉴4</a>",
);
}
for($i=0; $i<count($ys_menu); $i++){
if ($i > 0) {
echo "<tr><td height=1 class='mu_line'></td></tr>";
}
?>
<tr><td><?=$ys_menu[$i]?></td></tr>
<? } ?>
</table>
........
.........
그런데
이렇게 하면 관리자용 링크메뉴가 항상 아래쪽에 표시되도록 되어 있는데
이것을 게시판 사이사이에 관리자 메뉴가 보여질수 있도록 하고자 합니다.
----------------- 위 메뉴를 아래처럼 --------------------
--------- 관리자만 볼수있는 링크를 중간중간에 삽입 ------
<table align='center' width=90% cellpadding=0 cellspacing=0>
<tr><td><a href=''>게시판1</a></td></tr>
<tr><td><a href=''>관리자메뉴1</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>관리자메뉴2</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>게시판2</a></td></tr>
<tr><td><a href=''>게시판3</a></td></tr>
<tr><td><a href=''>게시판4</a></td></tr>
<tr><td><a href=''>관리자메뉴3</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>게시판5</a></td></tr>
<tr><td><a href=''>게시판6</a></td></tr>
<tr><td><a href=''>관리자메뉴4</a></td></tr> <-- '레벨10'이상만 볼수있게 함
</table>
........ 위 처럼 보이게 하려면 어떻게 구문을 어떻게 처리해야할지
........ 방법을 좀 부탁드려 봅니다
일반적으로 if($member[mb_level] >= '10') { <tr><td>관리자메뉴00</td></tr> } ....
이런식으로 일일히 권한을 넣어서 하는 방법이 아닌
좀더 간단한 구문으로 표시할수 잇는 방법이 없을까요..
이때, 관리자(레벨10이상)만 볼수있는 메뉴를 따로 표시하여
게시판링크메뉴 아래쪽에 표시하도록 했습니다.
<table align='center' width=90% cellpadding=0 cellspacing=0>
<?
$ys_menu=array(
"<a href=''>공지글</a>",
"<a href=''>게시판1</a>",
"<a href=''>게시판2</a>,
"<a href=''>게시판3</a>",
"<a href=''>게시판4</a>",
"<a href=''>게시판5</a>",
"<a href=''>게시판6</a>",
);
if($member[mb_level] >= '10') {
array_push($ys_menu,
"<a href=''>관리자메뉴1</a>",
"<a href=''>관리자메뉴2</a>",
"<a href=''>관리자메뉴3</a>",
"<a href=''>관리자메뉴4</a>",
);
}
for($i=0; $i<count($ys_menu); $i++){
if ($i > 0) {
echo "<tr><td height=1 class='mu_line'></td></tr>";
}
?>
<tr><td><?=$ys_menu[$i]?></td></tr>
<? } ?>
</table>
........
.........
그런데
이렇게 하면 관리자용 링크메뉴가 항상 아래쪽에 표시되도록 되어 있는데
이것을 게시판 사이사이에 관리자 메뉴가 보여질수 있도록 하고자 합니다.
----------------- 위 메뉴를 아래처럼 --------------------
--------- 관리자만 볼수있는 링크를 중간중간에 삽입 ------
<table align='center' width=90% cellpadding=0 cellspacing=0>
<tr><td><a href=''>게시판1</a></td></tr>
<tr><td><a href=''>관리자메뉴1</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>관리자메뉴2</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>게시판2</a></td></tr>
<tr><td><a href=''>게시판3</a></td></tr>
<tr><td><a href=''>게시판4</a></td></tr>
<tr><td><a href=''>관리자메뉴3</a></td></tr> <-- '레벨10'이상만 볼수있게 함
<tr><td><a href=''>게시판5</a></td></tr>
<tr><td><a href=''>게시판6</a></td></tr>
<tr><td><a href=''>관리자메뉴4</a></td></tr> <-- '레벨10'이상만 볼수있게 함
</table>
........ 위 처럼 보이게 하려면 어떻게 구문을 어떻게 처리해야할지
........ 방법을 좀 부탁드려 봅니다
일반적으로 if($member[mb_level] >= '10') { <tr><td>관리자메뉴00</td></tr> } ....
이런식으로 일일히 권한을 넣어서 하는 방법이 아닌
좀더 간단한 구문으로 표시할수 잇는 방법이 없을까요..
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 7개
관리자만 볼수 있는 메뉴의 td 에 class 를 주세요.
예 : <tr><td class="admin"><a href=''>관리자메뉴1</a></td></tr>
하단에 제이쿼리로 컨트롤 합니다.
<script type='text/javascript'>
$(document).ready(function() {
$("td[class='admin']").css("display":"none");
$("td[class='admin']").hide();
var admin_level = "<?=member[mb_level]?>";
if(admin_level == 10) {
$("td[class='admin']").css("display":"block");
$("td[class='admin']").show();
}
});
당연히 해당 게시판이나 메뉴는 php 뒷단에서 관리자인지 한번 더 체크하여, 아닐때는
에러를 발생시켜야 하겟습니다.
<?php
include_once("./_common.php");
if($member[mb_level] < 10) alert('관리자만 접근할 수 있습니다');exit;
?>
<table align='center' width=90% cellpadding=0 cellspacing=0>
<tr><td><a href=''>게시판1</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴1</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴2</a></td></tr>
<tr><td><a href=''>게시판2</a></td></tr>
<tr><td><a href=''>게시판3</a></td></tr>
<tr><td><a href=''>게시판4</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴3</a></td></tr>
<tr><td><a href=''>게시판5</a></td></tr>
<tr><td><a href=''>게시판6</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴4</a></td></tr>
</table>
<script type='text/javascript'>
$(document).ready(function() {
$("td[class='admin']").css("display":"none");
$("td[class='admin']").hide();
var admin_level = "<?=member[mb_level]?>";
if(admin_level == 10) {
$("td[class='admin']").css("display":"block");
$("td[class='admin']").show();
}
});
</script>
......... 위와 같이 했을때....에러가 발생합니다.
에러발생위치는... var admin_level = "<?=member[mb_level]?>"; ... 부분~
......... 알려주신 구문을 잘못 적용한것인지.... 체크한번 부탁드립니다
혹 뒷부분의 ....
});
</script>
부분을 아래처럼 바꿨을때는
}
</script>
메뉴가 전부 나타나 버립니다. 관리자용 메뉴는 숨김처리가 안되는군요.
이유는...
좌측메뉴에서 '관리자용 메뉴링크' 자체를 보이지 않게 하는것이고,
게시판환경설정에 읽기권한부터 10으로 설정되었기 때문에 보이지 않는링크를 찾아서
들어오더라도 막히게 됩니다.
하단에서 두번째 줄에 } 가 아닌 }); 가 되야겠네요~ 테스트 해보지 못한점 죄송합미다~
... var admin_level = "<?=member[mb_level]?>"; <--- 이부분입니다. ㅠㅠ
http://ddddd.kr/inc/testing/test1.php 직접 테스트 하고 코드 수정하였습니다~~~
<table align='center' width=90% cellpadding=0 cellspacing=0>
<tr><td><a href=''>게시판1</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴1</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴2</a></td></tr>
<tr><td><a href=''>게시판2</a></td></tr>
<tr><td><a href=''>게시판3</a></td></tr>
<tr><td><a href=''>게시판4</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴3</a></td></tr>
<tr><td><a href=''>게시판5</a></td></tr>
<tr><td><a href=''>게시판6</a></td></tr>
<tr><td class="admin"><a href=''>관리자메뉴4</a></td></tr>
</table>
<script type='text/javascript'>
$(document).ready(function(){
$("td[class='admin']").css({"display":"none"});
$("td[class='admin']").hide();
var admin_level = "<?=$member[mb_level];?>";
if(admin_level !== "10") {
$("td[class='admin']").css({"display":"block"});
$("td[class='admin']").show();
}
});
</script>
숨김메뉴가 ... 페이지 로딩시 나타났다 사라지는 문제가 있기는 하는데...
어쨋던 처음 질의 드렸던 형태의 코드는 1차로 완성이 된듯 합니다
댓글 감사합니다. 즐거운 하루 되시길~~ ^^