게시판 list에서 선택한 글 이동 기능넣기
본문
안녕하세요.
제가 조금 예전 버전의 그누보드 갤러리 게시판 스킨을 쓰고 있는데요,
선택한 글 삭제는 있지만 선택한 글 이동(복사) 기능이 없네요.
아래쪽에 이동에 대한 쿼리가 짜여져 있길래, 최신 스킨과 비교해서 수정해봤는데
잘 되지않아서 어디를 수정해야할지 질문 드립니다..
아래는 list 스킨 입니다.
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
include_once("$board_skin_path/skin.lib.php");
if (!function_exists("imagecopyresampled")) alert("GD 2.0.1 이상 버전이 설치되어 있어야 사용할 수 있는 갤러리 게시판 입니다.");
if (preg_match("/phone|Mobile|IEMobile|lgtelecom|iPhone|Android|SAMSUNG|BlackBerry|Windows CE|SonyEricsson|MOT/i", $_SERVER[HTTP_USER_AGENT])) {
$mod = 2;
$board[bo_1] = "140";
$board[bo_2] = "99";
} else {
$mod = $board[bo_gallery_cols];
if (!$board[bo_1]) {
$board[bo_1] = "175";
$sql = " update $g4[board_table] set bo_1 = '$board[bo_1]', bo_1_subj = '목록 가로 픽셀' where bo_table = '$bo_table' ";
sql_query($sql);
}
if (!$board[bo_2]) {
$board[bo_2] = "131";
$sql = " update $g4[board_table] set bo_2 = '$board[bo_2]', bo_2_subj = '목록 세로 픽셀' where bo_table = '$bo_table' ";
sql_query($sql);
}
}
$td_width = (int)(100 / $mod);
// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$colspan = 5;
if ($is_category) $colspan++;
if ($is_checkbox) $colspan++;
if ($is_good) $colspan++;
if ($is_nogood) $colspan++;
// 제목이 두줄로 표시되는 경우 이 코드를 사용해 보세요.
// <nobr style='display:block; overflow:hidden; width:000px;'>제목</nobr>
?>
<link href="<?=$board_skin_path?>/style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
select {
color:#666;
font-size:11px;
vertical-align:middle;
padding:2px;
border:1px solid #ccc;
height:21px;
-webkit-appearance:none;
-webkit-border-radius:3px;
vertical-align:middle;
background:url(<?=$board_skin_path?>/img/select_arrow.gif) no-repeat right top;
}
</style>
<!-- 게시판 목록 시작 -->
<table width="<?=$width?>" align="center" cellpadding="0" cellspacing="0">
<tr>
<td>
<!-- 분류 셀렉트 박스, 게시물 몇건, 관리자화면 링크 -->
<div class="gal_tab" style="float:left; ">
<? if ($is_category) { ?>
<? if (!$wr_id) { ?>
<?
$cnt_bo_1 = $bo_1[0] ? $bo_1[0] : 10; // 한줄당 분류 갯수(현재:10)
$cnt = 1;
$cnt0 = 0;
$bb_s=""; $bb_e="";
$b_s=""; $b_e="";
$arr = explode("|", $board[bo_category_list]); // 구분자가 , 로 되어 있음
//$str = " <span style='font-family: Tahoma; font-size:10px; color:#D2D2D2;'>|</span> ";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i])) {
if ($_GET["sca"] == $arr[$i]) { $cnt0++; $b_s="class='on'"; } else {$b_s=""; }
$str .= " <a href='./board.php?bo_table=$bo_table&sca=".urlencode($arr[$i])."' $b_s>$arr[$i]</a>";
//원래소스 $str .= " <a href='./board.php?bo_table=$bo_table&sca=".urlencode($arr[$i])."'>$b_s$arr[$i]$b_e</a> <span style='font-family: Tahoma; font-size:10px; color:#D2D2D2;'>|</span> ";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= "<br>"; }
$cnt++;
}
//if ($cnt0 == 0 ) { $bb_s="<b>"; $bb_e="</b>"; }
if ($cnt0 == 0 ) { $bb_s="class='on'"; $bb_e="</b>"; }
?>
<!--<a href='./board.php?bo_table=<?=$bo_table?>&page=<?=$page?>' <?=$bb_s?>>전체</a>-->
<?=$str?>
<? } ?>
<? } ?>
</div>
<? if ($is_checkbox) { ?>
<div class="chkbox">
<INPUT onclick="if (this.checked) all_checked(true); else all_checked(false);" type='checkbox' align="absmiddle"> 전체선택
</div>
<? } ?>
<!-- 목록 -->
<form name="fboardlist" method="post">
<input type='hidden' name='bo_table' value='<?=$bo_table?>'>
<input type='hidden' name='sfl' value='<?=$sfl?>'>
<input type='hidden' name='stx' value='<?=$stx?>'>
<input type='hidden' name='spt' value='<?=$spt?>'>
<input type='hidden' name='page' value='<?=$page?>'>
<input type='hidden' name='sw' value=''>
<table width="100%" cellpadding="0" cellspacing="0" class="bbs_line2">
<tr>
<?
for ($i=0; $i<count($list); $i++) {
if ($i && $i%$mod==0)
echo "</tr><tr>";
$style = "";
$subject = "<span $style>{$list[$i][subject]}</span>";
$comment_cnt = "";
if ($list[$i][comment_cnt])
$comment_cnt = " <a href=\"{$list[$i][comment_href]}\"><span style='font-size:10px;'><font face='Tahoma' color='#EE5A00'>{$list[$i][comment_cnt]}</span></a>";
$list[$i][name] = preg_replace("/<img /", "<img style='display:none;' ", $list[$i][name]);
$list[$i][name] = preg_replace("/> <span/", "><span", $list[$i][name]);
$list[$i][name] = preg_replace("/class='member'/", "", $list[$i][name]);
echo "<td width='{$td_width}%' valign=top style='word-break:break-all; padding:8px 0 0 0;' align='center'>";
echo "<table align=center>";
echo "<tr><td height=10></td></tr>";
echo "<tr><td align=center>";
echo "<div style='border:1px solid #ccc; background:#fff; padding:0px; font-size:0; line-height:0;'>";
echo "<a href='{$list[$i][href]}'>".makeThumbs($g4[path]."/data/file/$bo_table", $list[$i][file][0][file], $board[bo_1], $board[bo_2], cut_str($list[$i][subject],20))."</a></div>";
echo "</td></tr>";
echo "<tr><td align=center class=lh height=26>";
if ($is_checkbox) echo "<input type=checkbox name=chk_wr_id[] value='{$list[$i][wr_id]}' align='absmiddle'> ";
//if ($is_category) echo "<a href='{$list[$i][ca_name_href]}' style='color:#999; font-size:11px;'>[{$list[$i][ca_name]}]</a>";
echo "<a href='{$list[$i][href]}'>$subject</a><span class='comment'>{$comment_cnt}</span>";
echo " " . $list[$i][icon_new];
//echo " " . $list[$i][icon_file];
//echo " " . $list[$i][icon_link];
//echo " " . $list[$i][icon_hot];
//echo " " . $list[$i][icon_secret];
echo "</td></tr>";
//echo "<tr><td align=center style='font-size:11px; color:#888;'>Date.".$list[$i][datetime2]." <span style='font-size:9px;color:#CCCCCC;'>|</span> Hit.".$list[$i][wr_hit]."</td></tr>";
echo "</table></td>\n";
}
// 나머지 td
$cnt = $i%$mod;
if ($cnt)
for ($i=$cnt; $i<$mod; $i++)
echo "<td width='{$td_width}%'> </td>";
?>
</tr>
<? if (count($list) == 0) { echo "<tr><td colspan='$mod' height=200 align=center style='color:#999;'>게시물이 없습니다.</td></tr>"; } ?>
<tr><td colspan='<?=$mod?>' height="25"></td></tr>
<tr><td colspan=<?=$mod?> class='bbs_line'>
</table>
</form>
<div class="board_button">
<div style="float:left;">
<? if ($is_checkbox) { ?>
<a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border='0'></a>
<a href="javascript:check_confirm();">선택이동</a>
<? } ?>
</div>
<div style="float:right;">
<!--? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border='0'></a><--? } ?-->
<? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border='0'></a><? } ?>
</div>
</div>
<!-- 페이징 -->
<div class="board_page">
<? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/page_search_prev.gif' border='0' align=absmiddle title='이전검색' /></a>"; } ?>
<?
// 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
//echo $write_pages;
$write_pages = str_replace("처음", "<img src='$board_skin_path/img/page_begin.gif' border='0' title='처음' />", $write_pages);
$write_pages = str_replace("이전", "<img src='$board_skin_path/img/page_prev.gif' border='0' title='이전' />", $write_pages);
$write_pages = str_replace("다음", "<img src='$board_skin_path/img/page_next.gif' border='0' title='다음' />", $write_pages);
$write_pages = str_replace("맨끝", "<img src='$board_skin_path/img/page_end.gif' border='0' title='맨끝' />", $write_pages);
//$write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "$1", $write_pages);
$write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<span class='current'>$1</span>", $write_pages);
?>
<?=$write_pages?>
<? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/page_search_next.gif' border='0' align=absmiddle title='다음검색' /></a>"; } ?>
</div>
<!-- 검색&버튼 -->
<div class="board_search">
<form name="fsearch" method="get">
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
<input type="hidden" name="sca" value="<?=$sca?>">
<select name="sfl" class="sel">
<option value="wr_subject">제목</option>
<option value="wr_content">내용</option>
<option value="wr_subject||wr_content">제목+내용</option>
<!--<option value="wr_name,1">글쓴이</option>-->
</select>
<input name="stx" class="bbs_search" maxlength="33" itemname="검색어" required value='<?=stripslashes($stx)?>'><input type=image src="<?=$board_skin_path?>/img/btn_search.gif" border="0" style="vertical-align:middle; margin-top:2px;">
</form>
</div>
</td>
</tr>
</table>
<script language="JavaScript">
if ("<?=$sca?>") document.fcategory.sca.value = "<?=$sca?>";
if ("<?=$stx?>") {
document.fsearch.sfl.value = "<?=$sfl?>";
}
</script>
<? if ($is_checkbox) { ?>
<script language="JavaScript">
function all_checked(sw)
{
var f = document.fboardlist;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]")
f.elements[i].checked = sw;
}
}
function check_confirm(str)
{
var f = document.fboardlist;
var chk_count = 0;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
chk_count++;
}
if (!chk_count) {
alert(str + "할 게시물을 하나 이상 선택하세요.");
return false;
}
return true;
}
// 선택한 게시물 삭제
function select_delete()
{
var f = document.fboardlist;
str = "삭제";
if (!check_confirm(str))
return;
if (!confirm("선택한 게시물을 정말 "+str+" 하시겠습니까?\n\n한번 "+str+"한 자료는 복구할 수 없습니다"))
return;
f.action = "./delete_all.php";
f.submit();
}
// 선택한 게시물 복사 및 이동
function select_copy(sw)
{
var f = document.fboardlist;
if (sw == "copy")
str = "복사";
else
str = "이동";
if (!check_confirm(str))
return;
var sub_win = window.open("", "move", "left=50, top=50, width=396, height=550, scrollbars=1");
f.sw.value = sw;
f.target = "move";
f.action = "./move.php";
f.submit();
}
</script>
<? } ?>
<!-- 게시판 목록 끝 -->
답변을 작성하시기 전에 로그인 해주세요.