gnu3호환 관리자페이지 보드간편 추가 > 그누3 팁자료실

그누3 팁자료실

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

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

본문

관리자페이지에서 게시판생성시 생성 버튼 누르고 설정해주는 방식이 아닌
리스트란 하단란에 입력만 해줌으로써 처리

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

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&nbsp;&nbsp;$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");
?>
추천
0
  • 복사

댓글 전체

© SIRSOFT
현재 페이지 제일 처음으로