o

gnu3호환 관리자페이지 보드간편 추가

· 2005-07-08 (금) 15:57:44 · 4672 · 1
관리자페이지에서 게시판생성시 생성 버튼 누르고 설정해주는 방식이 아닌
리스트란 하단란에 입력만 해줌으로써 처리

자작프로그램의 그누메뉴통환 버젼에 맞게끔 수정된 버젼으로 그죤 그누보드 관리자에 적용시 약간의 소스 수정이 필요합니다.

bbs/admin/boardlist.php

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

define("_DOCTYPE_", "STYLE");

include "./bbs/admin/admin.lib.php";

$menu = "menu020";

// 2005.03.11 카테고리분류,그룹별 게시판보기 추가

$sql_common = " from $cfg[table_board] a ";
if ($is_admin == 'group') {
$sql_common .= " left join $cfg[table_group] b on (b.gr_id = a.gr_id)
left join $cfg[table_member] c on (c.mb_id = b.gr_admin) ";
}

if ($is_admin == 'group') {
$sql_search = " where (c.mb_id = '$member[mb_id]') ";
} else {
$sql_search = " where (1) ";
}
if ($stext) {
$sql_search .= " and ( ";
switch ($sselect) {
default :
$sql_search .= " ($sselect like '%$stext%') ";
break;
}
$sql_search .= " ) ";
}

// 2005.03.11 카테고리분류,그룹별 게시판보기 추가
if ($s_gr_id) $sql_search .= "and (a.gr_id = '$s_gr_id') ";

if (!$ssort) {
$ssort = "a.gr_id, a.bo_table";
$sorder = "asc";
}
$sql_order = " order by $ssort $sorder ";

$sql = " select count(*) $sql_common $sql_order ";
$row = sql_fetch($sql);
$total_count = $row[0];

$rows = $cfg[page_rows];
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
if ($page == "") { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함

$sql = " select *
$sql_common
$sql_search
$sql_order
limit $from_record, $rows ";
$result = sql_query($sql);

$listall = "<a href='./?doc=$doc' class=tt>처음</a>";

include "./bbs/admin/head.php";
?>

<?


$arr = get_skin_dir("board", ".");
for ($i=0; $i<count($arr); $i++) {
$skins .= "<option value='$arr[$i]'>$arr[$i]</option>\n";
}


?>

<table width=100% cellpadding=3 cellspacing=1>
<form name=fsearch method=get action='<?="./"?>'>
<input type=hidden name=doc value='<?=$doc?>'>
<tr>
<td width=50% align=left>
<select name=s_gr_id onchange="window.fsearch.submit();">
<option value=''>전체</option>
<?
$gr_list = sql_query(" SELECT * FROM gb_group ORDER BY gr_id asc");
for($i=0;$row=mysql_fetch_array($gr_list);$i++) {
echo "<option value='$row[gr_id]'>".$row[gr_subject]."</option>\n";
}
?>
</select>
<?=$listall?> (게시판수 : <?=nf($total_count)?>개)
</td>
<td width=50% align=right>
<select name=sselect>
<option value='bo_table'>TABLE</option>
<option value='bo_subject'>제목</option>
</select>
<input type=text name=stext class=ib required itemname='검색어' value='<?=$stext?>'>
<input type=image src='bbs/admin/image/btn_search.gif' align=absmiddle></td>
</tr>
</form>
</table>

<table width=100% cellpadding=3 cellspacing=1>
<colgroup width=40>
<colgroup width=70>
<colgroup width=100>
<colgroup width=80>
<colgroup width=170>
<colgroup width=80>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=12>
<colgroup width=55>
<tr align=center class=th>
<td><?=subject_sort_link('gr_id')?><span class=tf>그룹ID</span></a></td>
<td><?=subject_sort_link('bo_table')?><span class=tf>TABLE</span></a></td>
<td><?=subject_sort_link('bo_subject')?><span class=tf>제목</span></a></td>
<td><?=subject_sort_link('bo_admin')?><span class=tf>게시판관리자</span></a></td>
<td><?=subject_sort_link('bo_skin')?><span class=tf>스킨폴더</span></a></td>
<td><?=subject_sort_link('bo_1')?><span class=tf>메뉴</span></a></td>
<td title='목록읽기권한'><?=subject_sort_link('bo_list_level')?><span class=tf>목</span></a></td>
<td title='글읽기권한'><?=subject_sort_link('bo_read_level')?><span class=tf>읽</span></a></td>
<td title='글쓰기권한'><?=subject_sort_link('bo_write_level')?><span class=tf>쓰</span></a></td>
<td title='답변글쓰기권한'><?=subject_sort_link('bo_reply_level')?><span class=tf>답</span></a></td>
<td title='코멘트쓰기권한'><?=subject_sort_link('bo_comment_level')?><span class=tf>코</span></a></td>
<td title='업로드권한'><?=subject_sort_link('bo_upload_level')?><span class=tf>업</span></a></td>
<td title='다운로드권한'><?=subject_sort_link('bo_download_level')?><span class=tf>다</span></a></td>
<td title='공지사항쓰기권한'><?=subject_sort_link('bo_notice_level')?><span class=tf>공</span></a></td>
<td title='HTML쓰기권한'><?=subject_sort_link('bo_html_level')?><span class=tf>H</span></a></td>
<td title='링크쓰기권한'><?=subject_sort_link('bo_link_level')?><span class=tf>링</span></a></td>
<td><input type=image src='bbs/admin/image/btn_make.gif' align=absmiddle onclick="location='<?="./?doc=bbs/admin/boardgroupselect.php"?>';"></td>
</tr>
<form name=boardlist method=post action="./?doc=bbs/admin/boardlistupdate.php" autocomplete='off'>
<?

$sql = " SELECT * FROM club_menu
WHERE mu_sort = '0'
ORDER BY mu_id";
$result1 = sql_query($sql);

for ($i=0; $row=mysql_fetch_array($result1); $i++) {
$topmenus .= "<option value='$row[mu_id]'>$row[mu_subject]</option>\n";
}


for ($i=0; $row=mysql_fetch_array($result); $i++) {
$s_upd = "<a href='./?doc=bbs/admin/boardform.php&$qstr&w=u&bo_table=$row[bo_table]'><img src='bbs/admin/image/icon_edit.gif' border=0 alt='수정'></a>";
$s_del = "";
if ($is_admin == 'default') {
$s_del = "<a href=\"javascript:del('./?doc=bbs/admin/boarddelete.php&$qstr&bo_table=$row[bo_table]');\"><img src='bbs/admin/image/icon_del.gif' border=0 alt='삭제'></a>";
}

$list = $i%2;
echo "
<tr class='ht list$list' align=center>
<td width=40>$row[gr_id]</td>
<td width=70 align=left><input type=checkbox name=chk_bo_table[] value='$row[bo_table]'>
<a href='./?doc=bbs/gnuboard.php&bo_table=$row[bo_table]' class=tt>$row[bo_table]</a></td>
<td width=100 style='word-break:break-all;'><input type=text name=bo_subject[] value='$row[bo_subject]' size=15></td>
<td width=80><input type=text name=bo_admin[] size=10 value='$row[bo_admin]'></td>
<td width=170>
<select name=bo_skin$i>
$skins
</select>
<script>document.boardlist.bo_skin$i.value='$row[bo_skin]';</script>
</td>
<td>
<select name=bo_1$i>
$topmenus
</select>
<script>document.boardlist.bo_1$i.value='$row[bo_1]';</script>
</td>
<td width=12>$row[bo_list_level]</td>
<td width=12>$row[bo_read_level]</td>
<td width=12>$row[bo_write_level]</td>
<td width=12>$row[bo_reply_level]</td>
<td width=12>$row[bo_comment_level]</td>
<td width=12>$row[bo_upload_level]</td>
<td width=12>$row[bo_download_level]</td>
<td width=12>$row[bo_notice_level]</td>
<td width=12>$row[bo_html_level]</td>
<td width=12>$row[bo_link_level]</td>
<td width=55>$s_upd  $s_del</td>
</tr>";
}

if ($i == 0) {
echo "<tr><td colspan='24' align=center height=100 class='content contentbg'>자료가 없습니다.</td></tr>";
}
echo "<tr><td colspan='24' height=2 bgcolor=#98BFE4></td></tr>";

echo "</table>";

$pagelist = get_paging($default[de_write_pages], $page, $total_page, "./?doc=$doc&$qstr&page=");
if ($pagelist) {
echo "<table width=100% cellpadding=3 cellspacing=1><tr><td align=right>$pagelist</td></tr></table>\n";
}

if ($stext) {
echo "<script>document.fsearch.sselect.value = '$sselect';</script>";
}


echo "<table width=100% cellpadding=3 cellspacing=1>";
echo "<tr>";
echo "<td width=50%><a href='javascript:all_checked()'><img src='bbs/admin/image/btn_allcheck.gif' border=0></a>";
echo "<a href='javascript:all_unchecked()'> <img src='bbs/admin/image/btn_alluncheck.gif' border=0></a>";
echo " <input type=image src='bbs/admin/image/btn_allupdate.gif' border=0></td></tr></form></table>\n";

echo "
<script language='javascript'>
function all_checked()
{
var f = document.boardlist;

for (var i=0; i<f.length; i++) {
if (f.elements[i].name == 'chk_bo_table[]') {
if(f.elements[i].checked) {
f.elements[i].checked = false;
} else {
f.elements[i].checked = true;
}
}
}
}

function all_unchecked()
{
var f = document.boardlist;

for (var i=0; i<f.length; i++) {
if (f.elements[i].name == 'chk_bo_table[]') {
if(f.elements[i].checked) {
f.elements[i].checked = false;
} else {
f.elements[i].checked = false;
}
}
}
}
</script>";



include "./bbs/admin/tail.php";
?>


bbs/admin/boardlistupdte.php

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

define("_DOCTYPE_", "NONE");

include "./bbs/admin/admin.lib.php";

$menu = "menu020";

for ($i=0; $i<count($_POST[chk_bo_table]); $i++) {
$bo_table = $_POST[chk_bo_table][$i];
$bo_skin = $_POST["bo_skin$i"];
$bo_1 = $_POST["bo_1$i"];
$sql = " UPDATE $cfg[table_board]
SET bo_subject = '{$_POST[bo_subject][$i]}',
bo_skin = '$bo_skin',
bo_admin = '{$_POST[bo_admin][$i]}',
bo_1 = '$bo_1'
WHERE bo_table = '$bo_table' ";
sql_query($sql);
}

gotourl("./?doc=bbs/admin/boardlist.php&$qstr");
?>
|

댓글 1개

캬~ 이거 상당히 편리해보이네요^^
boardlist.php 한개만 수정하면 되는건가요? 복사&붙여넣기 하면 되죠?
댓글을 작성하시려면 로그인이 필요합니다.

그누3 팁자료실

1,026건
+
제목 글쓴이 날짜 조회
05-07-28 조회 5,971
05-07-27 조회 4,974
05-07-24 조회 5,688
05-07-17 조회 4,662
05-07-15 조회 6,440
05-07-14 조회 4,335
05-07-08 조회 4,673
05-07-08 조회 4,379
05-07-08 조회 3,881
05-07-08 조회 3,925
05-07-08 조회 3,935
05-07-03 조회 3,584
05-07-02 조회 4,024
05-06-30 조회 5,247
05-06-30 조회 5,893
05-06-20 조회 7,333
05-06-17 조회 3,746
05-06-12 조회 4,925
05-06-03 조회 5,308
05-06-01 조회 4,352