From 830cefce6acf75c8f7952934953578f66c46f239 Mon Sep 17 00:00:00 2001 From: gnuboard Date: Fri, 28 Dec 2012 09:55:45 +0900 Subject: [PATCH 1/2] =?UTF-8?q?notice=20=EC=98=A4=EB=A5=98=20=ED=95=B4?= =?UTF-8?q?=EA=B2=B0=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adm/member_list.php | 24 +-- adm/point_list.php | 29 ++- bbs/board.php | 70 ++++--- bbs/login.php | 10 +- bbs/view.php | 69 ++++--- bbs/view_comment.php | 86 ++++----- bbs/write.php | 87 +++++---- bbs/write_update.php | 356 +++++++++++++++++------------------ lib/common.lib.php | 83 ++++---- skin/board/neo/view.skin.php | 6 +- 10 files changed, 398 insertions(+), 422 deletions(-) diff --git a/adm/member_list.php b/adm/member_list.php index dbe4c2983..1463ffd5d 100644 --- a/adm/member_list.php +++ b/adm/member_list.php @@ -30,7 +30,7 @@ if ($stx) { } if ($is_admin != 'super') - $sql_search .= " and mb_level <= '{$member[mb_level]}' "; + $sql_search .= " and mb_level <= '{$member['mb_level']}' "; if (!$sst) { $sst = "mb_datetime"; @@ -44,9 +44,9 @@ $sql = " select count(*) as cnt {$sql_search} {$sql_order} "; $row = sql_fetch($sql); -$total_count = $row[cnt]; +$total_count = $row['cnt']; -$rows = $config[cf_page_rows]; +$rows = $config['cf_page_rows']; $total_page = ceil($total_count / $rows); // 전체 페이지 계산 if (!$page) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지) $from_record = ($page - 1) * $rows; // 시작 열을 구함 @@ -58,7 +58,7 @@ $sql = " select count(*) as cnt and mb_leave_date <> '' {$sql_order} "; $row = sql_fetch($sql); -$leave_count = $row[cnt]; +$leave_count = $row['cnt']; // 차단회원수 $sql = " select count(*) as cnt @@ -67,7 +67,7 @@ $sql = " select count(*) as cnt and mb_intercept_date <> '' {$sql_order} "; $row = sql_fetch($sql); -$intercept_count = $row[cnt]; +$intercept_count = $row['cnt']; $listall = ""; if ($sfl || $stx) // 검색일 때만 처음 버튼을 보여줌 @@ -166,8 +166,8 @@ for ($i=0; $row=sql_fetch_array($result); $i++) { $sql2 = " select count(*) as cnt from {$g4['group_member_table']} where mb_id = '{$row['mb_id']}' "; $row2 = sql_fetch($sql2); $group = ''; - if ($row2[cnt]) - $group = ''.$row2[cnt].''; + if ($row2['cnt']) + $group = ''.$row2['cnt'].''; if ($is_admin == 'group') { @@ -214,11 +214,11 @@ for ($i=0; $row=sql_fetch_array($result); $i++) {
- - + + - - + + @@ -243,7 +243,7 @@ if ($i == 0)
diff --git a/adm/point_list.php b/adm/point_list.php index 0119da000..c8aea8742 100644 --- a/adm/point_list.php +++ b/adm/point_list.php @@ -33,9 +33,9 @@ $sql = " select count(*) as cnt {$sql_search} {$sql_order} "; $row = sql_fetch($sql); -$total_count = $row[cnt]; +$total_count = $row['cnt']; -$rows = $config[cf_page_rows]; +$rows = $config['cf_page_rows']; $total_page = ceil($total_count / $rows); // 전체 페이지 계산 if ($page == '') $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지) $from_record = ($page - 1) * $rows; // 시작 열을 구함 @@ -47,9 +47,11 @@ $sql = " select * limit {$from_record}, {$rows} "; $result = sql_query($sql); +$listall = ''; if ($sfl || $stx) // 검색렬일 때만 처음 버튼을 보여줌 $listall = '전체목록'; +$mb = array(); if ($sfl == 'mb_id' && $stx) $mb = get_member($stx); @@ -82,9 +84,9 @@ function point_clear() 전체 '; $link2 = ''; } @@ -148,7 +147,7 @@ for ($i=0; $row=sql_fetch_array($result); $i++) - + @@ -156,8 +155,8 @@ for ($i=0; $row=sql_fetch_array($result); $i++)
- - + +
diff --git a/bbs/board.php b/bbs/board.php index 7c60a5255..8e29f8cc3 100644 --- a/bbs/board.php +++ b/bbs/board.php @@ -2,7 +2,7 @@ include_once('./_common.php'); $cwin = ""; -if (array_key_exists('cwin', $_GET)) { +if (isset($_GET['cwin']) && $_GET['cwin']) { $cwin = $_GET['cwin']; } @@ -13,7 +13,7 @@ if (!$board['bo_table']) { alert('존재하지 않는 게시판입니다.', $g4['path']); } -if (array_key_exists('wr_is_comment', $write)) { +if (isset($write['wr_is_comment']) && $write['wr_is_comment']) { goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'#c_'.$wr_id); } @@ -37,10 +37,9 @@ if (isset($wr_id) && $wr_id) { } // 그룹접근 사용 - if ($group[gr_use_access]) - { - if (!$member[mb_id]) { - $msg = '비회원은 이 게시판에 접근할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.'; + if (isset($group['gr_use_access']) && $group['gr_use_access']) { + if ($is_guest) { + $msg = "비회원은 이 게시판에 접근할 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오."; if ($cwin) alert_close($msg); else @@ -48,60 +47,55 @@ if (isset($wr_id) && $wr_id) { } // 그룹관리자 이상이라면 통과 - if ($is_admin == "super" || $is_admin == "group") + if ($is_admin == "super" || $is_admin == "group") { ; - else - { + } else { // 그룹접근 - $sql = " select count(*) as cnt - from {$g4[group_member_table]} - where gr_id = '{$board[gr_id]}' and mb_id = '{$member[mb_id]}' "; + $sql = " select count(*) as cnt from {$g4['group_member_table']} where gr_id = '{$board['gr_id']}' and mb_id = '{$member['mb_id']}' "; $row = sql_fetch($sql); - if (!$row[cnt]) - alert('접근 권한이 없으므로 글읽기가 불가합니다.'.PHP_EOL.PHP_EOL.'궁금하신 사항은 관리자에게 문의 바랍니다.', $g4['path']); + if (!$row['cnt']) { + alert("접근 권한이 없으므로 글읽기가 불가합니다.\\n\\n궁금하신 사항은 관리자에게 문의 바랍니다.", $g4['path']); + } } } // 로그인된 회원의 권한이 설정된 읽기 권한보다 작다면 - if ($member[mb_level] < $board[bo_read_level]) - { - if ($member[mb_id]) - //alert("글을 읽을 권한이 없습니다."); + if ($member['mb_level'] < $board['bo_read_level']) { + if ($is_member) alert('글을 읽을 권한이 없습니다.', $g4['path']); else alert('글을 읽을 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&url='.urlencode('./board.php?bo_table='.$bo_table.'&wr_id='.$wr_id)); } // 자신의 글이거나 관리자라면 통과 - if (($write[mb_id] && $write[mb_id] == $member[mb_id]) || $is_admin) + if (($write['mb_id'] && $write['mb_id'] == $member['mb_id']) || $is_admin) { ; - else - { + } else { // 비밀글이라면 - if (strstr($write[wr_option], "secret")) + if (strstr($write['wr_option'], "secret")) { // 회원이 비밀글을 올리고 관리자가 답변글을 올렸을 경우 // 회원이 관리자가 올린 답변글을 바로 볼 수 없던 오류를 수정 $is_owner = false; - if ($write[wr_reply] && $member[mb_id]) + if ($write['wr_reply'] && $member['mb_id']) { $sql = " select mb_id from {$write_table} - where wr_num = '{$write[wr_num]}' + where wr_num = '{$write['wr_num']}' and wr_reply = '' and wr_is_comment = 0 "; $row = sql_fetch($sql); - if ($row[mb_id] == $member[mb_id]) + if ($row['mb_id'] == $member['mb_id']) $is_owner = true; } - $ss_name = 'ss_secret_'.$bo_table.'_'.$write[wr_num]; + $ss_name = 'ss_secret_'.$bo_table.'_'.$write['wr_num']; if (!$is_owner) { //$ss_name = "ss_secret_{$bo_table}_{$wr_id}"; // 한번 읽은 게시물의 번호는 세션에 저장되어 있고 같은 게시물을 읽을 경우는 다시 패스워드를 묻지 않습니다. // 이 게시물이 저장된 게시물이 아니면서 관리자가 아니라면 - //if ("$bo_table|$write[wr_num]" != get_session("ss_secret")) + //if ("$bo_table|$write['wr_num']" != get_session("ss_secret")) if (!get_session($ss_name)) goto_url('./password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr); } @@ -117,26 +111,26 @@ if (isset($wr_id) && $wr_id) { sql_query(" update {$write_table} set wr_hit = wr_hit + 1 where wr_id = '{$wr_id}' "); // 자신의 글이면 통과 - if ($write[mb_id] && $write[mb_id] == $member[mb_id]) { + if ($write['mb_id'] && $write['mb_id'] == $member['mb_id']) { ; - } else if ($is_guest && $board[bo_read_level] == 1 && $write[wr_ip] == $_SERVER['REMOTE_ADDR']) { + } else if ($is_guest && $board['bo_read_level'] == 1 && $write['wr_ip'] == $_SERVER['REMOTE_ADDR']) { // 비회원이면서 읽기레벨이 1이고 등록된 아이피가 같다면 자신의 글이므로 통과 ; } else { /* // 회원이상 글읽기가 가능하다면 - if ($board[bo_read_level] > 1) { - if ($member[mb_point] + $board[bo_read_point] < 0) - alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글읽기('.number_format($board[bo_read_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 모으신 후 다시 글읽기 해 주십시오.'); + if ($board['bo_read_level'] > 1) { + if ($member['mb_point'] + $board['bo_read_point'] < 0) + alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 글읽기('.number_format($board['bo_read_point']).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 모으신 후 다시 글읽기 해 주십시오.'); - insert_point($member[mb_id], $board[bo_read_point], '{$board[bo_subject]} {$wr_id} 글읽기', $bo_table, $wr_id, '읽기'); + insert_point($member['mb_id'], $board['bo_read_point'], '{$board['bo_subject']} {$wr_id} 글읽기', $bo_table, $wr_id, '읽기'); } */ // 글읽기 포인트가 설정되어 있다면 - if ($board[bo_read_point] && $member[mb_point] + $board[bo_read_point] < 0) - alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글읽기('.number_format($board[bo_read_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 모으신 후 다시 글읽기 해 주십시오.'); + if ($board['bo_read_point'] && $member['mb_point'] + $board['bo_read_point'] < 0) + alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 글읽기('.number_format($board['bo_read_point']).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 모으신 후 다시 글읽기 해 주십시오.'); - insert_point($member[mb_id], $board[bo_read_point], '{$board[bo_subject]} {$wr_id} 글읽기', $bo_table, $wr_id, '읽기'); + insert_point($member['mb_id'], $board['bo_read_point'], "{$board['bo_subject']} {$wr_id} 글읽기", $bo_table, $wr_id, '읽기'); } set_session($ss_name, TRUE); @@ -213,7 +207,7 @@ if (!($board['bo_use_comment'] && $cwin)) { } // 전체목록보이기 사용이 "예" 또는 wr_id 값이 없다면 목록을 보임 - //if ($board[bo_use_list_view] || empty($wr_id)) + //if ($board['bo_use_list_view'] || empty($wr_id)) if ($member['mb_level'] >= $board['bo_list_level'] && $board['bo_use_list_view'] || empty($wr_id)) include_once ('./list.php'); @@ -222,7 +216,7 @@ if (!($board['bo_use_comment'] && $cwin)) { else include_once('./view_comment.php'); -echo PHP_EOL.''.PHP_EOL; +echo "\\n\\n"; include_once($g4['path'].'/tail.sub.php'); ?> diff --git a/bbs/login.php b/bbs/login.php index 9e2c71850..29e82b844 100644 --- a/bbs/login.php +++ b/bbs/login.php @@ -5,13 +5,13 @@ $g4['title'] = '로그인'; include_once('./_head.php'); $p = parse_url($url); -if ($p['scheme'] || $p['host']) { +if ((isset($p['scheme']) && $p['scheme']) || + (isset($p['host']) && $p['host'])) { alert('url에 도메인을 지정할 수 없습니다.'); } // 이미 로그인 중이라면 -if ($member[mb_id]) -{ +if ($member['mb_id']) { if ($url) goto_url($url); else @@ -21,9 +21,9 @@ if ($member[mb_id]) if ($url) $urlencode = urlencode($url); else - $urlencode = urlencode($_SERVER[REQUEST_URI]); + $urlencode = urlencode($_SERVER['REQUEST_URI']); -$member_skin_path = $g4['path'].'/skin/member/'.$config[cf_member_skin]; +$member_skin_path = $g4['path'].'/skin/member/'.$config['cf_member_skin']; include_once($member_skin_path.'/login.skin.php'); diff --git a/bbs/view.php b/bbs/view.php index 345b21e59..d86d8285c 100644 --- a/bbs/view.php +++ b/bbs/view.php @@ -20,57 +20,57 @@ if ($sca || $stx) { $list_href = './board.php?bo_table='.$bo_table.'&page='.$page; } -if (!$board[bo_use_list_view]) { +if (!$board['bo_use_list_view']) { if ($sql_search) $sql_search = " and " . $sql_search; // 윗글을 얻음 - $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num = '{$write[wr_num]}' and wr_reply < '{$write[wr_reply]}' {$sql_search} order by wr_num desc, wr_reply desc limit 1 "; + $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num = '{$write['wr_num']}' and wr_reply < '{$write['wr_reply']}' {$sql_search} order by wr_num desc, wr_reply desc limit 1 "; $prev = sql_fetch($sql); // 위의 쿼리문으로 값을 얻지 못했다면 - if (!$prev[wr_id]) { - $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num < '{$write[wr_num]}' {$sql_search} order by wr_num desc, wr_reply desc limit 1 "; + if (!$prev['wr_id']) { + $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num < '{$write['wr_num']}' {$sql_search} order by wr_num desc, wr_reply desc limit 1 "; $prev = sql_fetch($sql); } // 아래글을 얻음 - $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num = '{$write[wr_num]}' and wr_reply > '{$write[wr_reply]}' {$sql_search} order by wr_num, wr_reply limit 1 "; + $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num = '{$write['wr_num']}' and wr_reply > '{$write['wr_reply']}' {$sql_search} order by wr_num, wr_reply limit 1 "; $next = sql_fetch($sql); // 위의 쿼리문으로 값을 얻지 못했다면 - if (!$next[wr_id]) { - $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num > '{$write[wr_num]}' {$sql_search} order by wr_num, wr_reply limit 1 "; + if (!$next['wr_id']) { + $sql = " select wr_id, wr_subject from {$write_table} where wr_is_comment = 0 and wr_num > '{$write['wr_num']}' {$sql_search} order by wr_num, wr_reply limit 1 "; $next = sql_fetch($sql); } } // 이전글 링크 $prev_href = ''; -if ($prev[wr_id]) { - $prev_wr_subject = get_text(cut_str($prev[wr_subject], 255)); - $prev_href = './board.php?bo_table='.$bo_table.'&wr_id='.$prev[wr_id].'&page='.$page.$qstr; +if (isset($prev['wr_id']) && $prev['wr_id']) { + $prev_wr_subject = get_text(cut_str($prev['wr_subject'], 255)); + $prev_href = './board.php?bo_table='.$bo_table.'&wr_id='.$prev['wr_id'].'&page='.$page.$qstr; } // 다음글 링크 $next_href = ''; -if ($next[wr_id]) { - $next_wr_subject = get_text(cut_str($next[wr_subject], 255)); - $next_href = './board.php?bo_table='.$bo_table.'&wr_id='.$next[wr_id].'&page='.$page.$qstr; +if (isset($next['wr_id']) && $next['wr_id']) { + $next_wr_subject = get_text(cut_str($next['wr_subject'], 255)); + $next_href = './board.php?bo_table='.$bo_table.'&wr_id='.$next['wr_id'].'&page='.$page.$qstr; } // 쓰기 링크 $write_href = ''; -if ($member[mb_level] >= $board[bo_write_level]) +if ($member['mb_level'] >= $board['bo_write_level']) $write_href = './write.php?bo_table='.$bo_table; // 답변 링크 $reply_href = ''; -if ($member[mb_level] >= $board[bo_reply_level]) +if ($member['mb_level'] >= $board['bo_reply_level']) $reply_href = './write.php?w=r&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr; // 수정, 삭제 링크 $update_href = $delete_href = ''; // 로그인중이고 자신의 글이라면 또는 관리자라면 패스워드를 묻지 않고 바로 수정, 삭제 가능 -if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) { +if (($member['mb_id'] && ($member['mb_id'] == $write['mb_id'])) || $is_admin) { $update_href = './write.php?w=u&bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr; $delete_href = 'javascript:del(\'./delete.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.urldecode($qstr).'\');'; if ($is_admin) @@ -79,14 +79,14 @@ if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) { $delete_href = 'javascript:del(\'./delete.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&token='.$token.'&page='.$page.urldecode($qstr).'\');'; } } -else if (!$write[mb_id]) { // 회원이 쓴 글이 아니라면 +else if (!$write['mb_id']) { // 회원이 쓴 글이 아니라면 $update_href = './password.php?w=u&bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr; $delete_href = './password.php?w=d&bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr; } // 최고, 그룹관리자라면 글 복사, 이동 가능 $copy_href = $move_href = ''; -if ($write[wr_reply] == '' && ($is_admin == 'super' || $is_admin == 'group')) { +if ($write['wr_reply'] == '' && ($is_admin == 'super' || $is_admin == 'group')) { $copy_href = 'javascript:win_open(\'./move.php?sw=copy&bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr.'\', \'boardcopy\', \'left=50, top=50, width=500, height=550, scrollbars=1\');'; $move_href = 'javascript:win_open(\'./move.php?sw=move&bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr.'\', \'boardmove\', \'left=50, top=50, width=500, height=550, scrollbars=1\');'; } @@ -94,53 +94,52 @@ if ($write[wr_reply] == '' && ($is_admin == 'super' || $is_admin == 'group')) { $scrap_href = ''; $good_href = ''; $nogood_href = ''; -if ($member[mb_id]) { +if ($member['mb_id']) { // 스크랩 링크 $scrap_href = './scrap_popin.php?bo_table='.$bo_table.'&wr_id='.$wr_id; // 추천 링크 - if ($board[bo_use_good]) + if ($board['bo_use_good']) $good_href = './good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=good'; // 비추천 링크 - if ($board[bo_use_nogood]) + if ($board['bo_use_nogood']) $nogood_href = './good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=nogood'; } $view = get_view($write, $board, $board_skin_path, 255); if (strstr($sfl, 'subject')) - $view[subject] = search_font($stx, $view[subject]); + $view['subject'] = search_font($stx, $view['subject']); $html = 0; -if (strstr($view[wr_option], 'html1')) +if (strstr($view['wr_option'], 'html1')) $html = 1; -else if (strstr($view[wr_option], 'html2')) +else if (strstr($view['wr_option'], 'html2')) $html = 2; -$view[content] = conv_content($view[wr_content], $html); +$view['content'] = conv_content($view['wr_content'], $html); if (strstr($sfl, 'content')) - $view[content] = search_font($stx, $view[content]); -$view[content] = preg_replace("/(\]*)(\>)/i", "\\1 onclick='image_window(this)'", $view[content]); + $view['content'] = search_font($stx, $view['content']); +//$view['content'] = preg_replace("/(\]*)(\>)/i", "\\1 onclick='image_window(this)'", $view['content']); -//$view[rich_content] = preg_replace("/{img\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view[content]); -$view[rich_content] = preg_replace("/{이미지\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view[content]); +//$view['rich_content'] = preg_replace("/{img\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view['content']); +$view['rich_content'] = preg_replace("/{이미지\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view['content']); // 트랙백 $trackback_url = ''; -if ($member[mb_level] >= $board[bo_trackback_level]) { +if ($member['mb_level'] >= $board['bo_trackback_level']) { if (isset($g4['token_time']) == false) $g4['token_time'] = 3; - $trackback_url = $g4[url].'/'.$g4[bbs].'/tb.php/'.$bo_table.'/'.$wr_id; + $trackback_url = $g4['url'].'/'.$g4['bbs'].'/tb.php/'.$bo_table.'/'.$wr_id; } $is_signature = false; $signature = ''; -if ($board[bo_use_signature] && $view[mb_id]) -{ +if ($board['bo_use_signature'] && $view['mb_id']) { $is_signature = true; - $mb = get_member($view[mb_id]); - $signature = $mb[mb_signature]; + $mb = get_member($view['mb_id']); + $signature = $mb['mb_signature']; //$signature = bad_tag_convert($signature); // 081022 : CSRF 보안 결함으로 인한 코드 수정 diff --git a/bbs/view_comment.php b/bbs/view_comment.php index a25b228d8..1c077946f 100644 --- a/bbs/view_comment.php +++ b/bbs/view_comment.php @@ -3,19 +3,15 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 @include_once($board_skin_path.'/view_comment.head.skin.php'); -// 자동등록방지 -include_once ('./norobot.inc.php'); - // 코멘트를 새창으로 여는 경우 세션값이 없으므로 생성한다. -if ($is_admin && !$token) -{ +if ($is_admin && !$token) { set_session("ss_delete_token", $token = uniqid(time())); } $list = array(); $is_comment_write = false; -if ($member[mb_level] >= $board[bo_comment_level]) +if ($member['mb_level'] >= $board['bo_comment_level']) $is_comment_write = true; // 코멘트 출력 @@ -26,74 +22,74 @@ for ($i=0; $row=sql_fetch_array($result); $i++) { $list[$i] = $row; - //$list[$i][name] = get_sideview($row[mb_id], cut_str($row[wr_name], 20, ''), $row[wr_email], $row[wr_homepage]); + //$list[$i]['name'] = get_sideview($row['mb_id'], cut_str($row['wr_name'], 20, ''), $row['wr_email'], $row['wr_homepage']); - $tmp_name = get_text(cut_str($row[wr_name], $config[cf_cut_name])); // 설정된 자리수 만큼만 이름 출력 - if ($board[bo_use_sideview]) - $list[$i][name] = get_sideview($row[mb_id], $tmp_name, $row[wr_email], $row[wr_homepage]); + $tmp_name = get_text(cut_str($row['wr_name'], $config['cf_cut_name'])); // 설정된 자리수 만큼만 이름 출력 + if ($board['bo_use_sideview']) + $list[$i]['name'] = get_sideview($row['mb_id'], $tmp_name, $row['wr_email'], $row['wr_homepage']); else - $list[$i][name] = ''.$tmp_name.''; + $list[$i]['name'] = ''.$tmp_name.''; // 공백없이 연속 입력한 문자 자르기 (way 보드 참고. way.co.kr) - //$list[$i][content] = eregi_replace("[^ \n<>]{130}", "\\0\n", $row[wr_content]); + //$list[$i]['content'] = eregi_replace("[^ \n<>]{130}", "\\0\n", $row['wr_content']); - $list[$i][content] = $list[$i][content1]= '비밀글 입니다.'; - if (!strstr($row[wr_option], 'secret') || + $list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.'; + if (!strstr($row['wr_option'], 'secret') || $is_admin || - ($write[mb_id]==$member[mb_id] && $member[mb_id]) || - ($row[mb_id]==$member[mb_id] && $member[mb_id])) { - $list[$i][content1] = $row[wr_content]; - $list[$i][content] = conv_content($row[wr_content], 0, 'wr_content'); - $list[$i][content] = search_font($stx, $list[$i][content]); + ($write['mb_id']==$member['mb_id'] && $member['mb_id']) || + ($row['mb_id']==$member['mb_id'] && $member['mb_id'])) { + $list[$i]['content1'] = $row['wr_content']; + $list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content'); + $list[$i]['content'] = search_font($stx, $list[$i]['content']); } - $list[$i][trackback] = url_auto_link($row[wr_trackback]); - $list[$i][datetime] = substr($row[wr_datetime],2,14); + $list[$i]['trackback'] = url_auto_link($row['wr_trackback']); + $list[$i]['datetime'] = substr($row['wr_datetime'],2,14); // 관리자가 아니라면 중간 IP 주소를 감춘후 보여줍니다. - $list[$i][ip] = $row[wr_ip]; + $list[$i]['ip'] = $row['wr_ip']; if (!$is_admin) - $list[$i][ip] = preg_replace("/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/", "\\1.♡.\\3.\\4", $row[wr_ip]); + $list[$i]['ip'] = preg_replace("/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/", "\\1.♡.\\3.\\4", $row['wr_ip']); - $list[$i][is_reply] = false; - $list[$i][is_edit] = false; - $list[$i][is_del] = false; + $list[$i]['is_reply'] = false; + $list[$i]['is_edit'] = false; + $list[$i]['is_del'] = false; if ($is_comment_write || $is_admin) { - if ($member[mb_id]) + if ($member['mb_id']) { - if ($row[mb_id] == $member[mb_id] || $is_admin) + if ($row['mb_id'] == $member['mb_id'] || $is_admin) { - $list[$i][del_link] = './delete_comment.php?bo_table='.$bo_table.'&comment_id='.$row[wr_id].'&token='.$token.'&cwin='.$cwin.'&page='.$page.$qstr; - $list[$i][is_edit] = true; - $list[$i][is_del] = true; + $list[$i]['del_link'] = './delete_comment.php?bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&token='.$token.'&cwin='.$cwin.'&page='.$page.$qstr; + $list[$i]['is_edit'] = true; + $list[$i]['is_del'] = true; } } else { - if (!$row[mb_id]) { - $list[$i][del_link] = './password.php?w=x&bo_table='.$bo_table.'&comment_id='.$row[wr_id].'&cwin='.$cwin.'&page='.$page.$qstr; - $list[$i][is_del] = true; + if (!$row['mb_id']) { + $list[$i]['del_link'] = './password.php?w=x&bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&cwin='.$cwin.'&page='.$page.$qstr; + $list[$i]['is_del'] = true; } } - if (strlen($row[wr_comment_reply]) < 5) - $list[$i][is_reply] = true; + if (strlen($row['wr_comment_reply']) < 5) + $list[$i]['is_reply'] = true; } // 05.05.22 // 답변있는 코멘트는 수정, 삭제 불가 if ($i > 0 && !$is_admin) { - if ($row[wr_comment_reply]) + if ($row['wr_comment_reply']) { - $tmp_comment_reply = substr($row[wr_comment_reply], 0, strlen($row[wr_comment_reply]) - 1); - if ($tmp_comment_reply == $list[$i-1][wr_comment_reply]) + $tmp_comment_reply = substr($row['wr_comment_reply'], 0, strlen($row['wr_comment_reply']) - 1); + if ($tmp_comment_reply == $list[$i-1]['wr_comment_reply']) { - $list[$i-1][is_edit] = false; - $list[$i-1][is_del] = false; + $list[$i-1]['is_edit'] = false; + $list[$i-1]['is_del'] = false; } } } @@ -106,17 +102,17 @@ if ($is_admin) } else { - $comment_min = (int)$board[bo_comment_min]; - $comment_max = (int)$board[bo_comment_max]; + $comment_min = (int)$board['bo_comment_min']; + $comment_max = (int)$board['bo_comment_max']; } include_once($board_skin_path.'/view_comment.skin.php'); // 필터 -//echo "\n"; +//echo "\n"; //echo "\n"; -if (!$member[mb_id]) // 비회원일 경우에만 +if (!$member['mb_id']) // 비회원일 경우에만 echo ''.PHP_EOL; @include_once($board_skin_path.'/view_comment.tail.skin.php'); diff --git a/bbs/write.php b/bbs/write.php index 7180c46f4..0a03e27ae 100644 --- a/bbs/write.php +++ b/bbs/write.php @@ -40,7 +40,7 @@ if ($w == '') { if ($member['mb_id']) { alert('글을 쓸 권한이 없습니다.'); } else { - alert('글을 쓸 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&url='.urlencode($_SERVER[PHP_SELF].'?bo_table='.$bo_table)); + alert('글을 쓸 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table)); } } @@ -55,73 +55,73 @@ if ($w == '') { $title_msg = '글쓰기'; } else if ($w == 'u') { // 김선용 1.00 : 글쓰기 권한과 수정은 별도로 처리되어야 함 - //if ($member[mb_level] < $board[bo_write_level]) { + //if ($member['mb_level'] < $board['bo_write_level']) { if($member['mb_id'] && $write['mb_id'] == $member['mb_id']) { ; } else if ($member['mb_level'] < $board['bo_write_level']) { if ($member['mb_id']) { alert('글을 수정할 권한이 없습니다.'); } else { - alert('글을 수정할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&url='.urlencode($_SERVER[PHP_SELF].'?bo_table='.$bo_table)); + alert('글을 수정할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table)); } } - $len = strlen($write[wr_reply]); + $len = strlen($write['wr_reply']); if ($len < 0) $len = 0; - $reply = substr($write[wr_reply], 0, $len); + $reply = substr($write['wr_reply'], 0, $len); // 원글만 구한다. $sql = " select count(*) as cnt from {$write_table} where wr_reply like '{$reply}%' - and wr_id <> '{$write[wr_id]}' - and wr_num = '{$write[wr_num]}' + and wr_id <> '{$write['wr_id']}' + and wr_num = '{$write['wr_num']}' and wr_is_comment = 0 "; $row = sql_fetch($sql); - if ($row[cnt] && !$is_admin) + if ($row['cnt'] && !$is_admin) alert('이 글과 관련된 답변글이 존재하므로 수정 할 수 없습니다.'.PHP_EOL.PHP_EOL.'답변글이 있는 원글은 수정할 수 없습니다.'); // 코멘트 달린 원글의 수정 여부 $sql = " select count(*) as cnt from {$write_table} where wr_parent = '{$wr_id}' - and mb_id <> '{$member[mb_id]}' + and mb_id <> '{$member['mb_id']}' and wr_is_comment = 1 "; $row = sql_fetch($sql); - if ($row[cnt] >= $board[bo_count_modify] && !$is_admin) - alert('이 글과 관련된 코멘트가 존재하므로 수정 할 수 없습니다.'.PHP_EOL.PHP_EOL.'코멘트가 '.$board[bo_count_modify].'건 이상 달린 원글은 수정할 수 없습니다.'); + if ($row['cnt'] >= $board['bo_count_modify'] && !$is_admin) + alert('이 글과 관련된 코멘트가 존재하므로 수정 할 수 없습니다.'.PHP_EOL.PHP_EOL.'코멘트가 '.$board['bo_count_modify'].'건 이상 달린 원글은 수정할 수 없습니다.'); $title_msg = '글수정'; } else if ($w == 'r') { - if ($member[mb_level] < $board[bo_reply_level]) { - if ($member[mb_id]) + if ($member['mb_level'] < $board['bo_reply_level']) { + if ($member['mb_id']) alert('글을 답변할 권한이 없습니다.'); else - alert('글을 답변할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?$qstr&url='.urlencode($_SERVER[PHP_SELF].'?bo_table='.$bo_table)); + alert('글을 답변할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?$qstr&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table)); } /* - if ($member[mb_point] + $board[bo_comment_point] < 0) - alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글답변('.number_format($board[bo_comment_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글답변 해 주십시오.'); + if ($member['mb_point'] + $board['bo_comment_point'] < 0) + alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 글답변('.number_format($board['bo_comment_point']).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글답변 해 주십시오.'); */ - $tmp_point = $member[mb_point] ? $member[mb_point] : 0; - if ($tmp_point + $board[bo_write_point] < 0 && !$is_admin) - alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글답변('.number_format($board[bo_comment_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글답변 해 주십시오.'); + $tmp_point = $member['mb_point'] ? $member['mb_point'] : 0; + if ($tmp_point + $board['bo_write_point'] < 0 && !$is_admin) + alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 글답변('.number_format($board['bo_comment_point']).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글답변 해 주십시오.'); - //if (preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board[bo_notice])) + //if (preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board['bo_notice'])) if (in_array((int)$wr_id, $notice_array)) alert('공지에는 답변 할 수 없습니다.'); //---------- // 4.06.13 : 비밀글을 타인이 열람할 수 있는 오류 수정 (헐랭이, 플록님께서 알려주셨습니다.) // 코멘트에는 원글의 답변이 불가하므로 - if ($write[wr_is_comment]) + if ($write['wr_is_comment']) alert('정상적인 접근이 아닙니다.'); // 비밀글인지를 검사 - if (strstr($write[wr_option], 'secret')) { - if ($write[mb_id]) { + if (strstr($write['wr_option'], 'secret')) { + if ($write['mb_id']) { // 회원의 경우는 해당 글쓴 회원 및 관리자 - if (!($write[mb_id] == $member[mb_id] || $is_admin)) + if (!($write['mb_id'] == $member['mb_id'] || $is_admin)) alert('비밀글에는 자신 또는 관리자만 답변이 가능합니다.'); } else { // 비회원의 경우는 비밀글에 답변이 불가함 @@ -135,32 +135,32 @@ if ($w == '') { $reply_array = &$write; // 최대 답변은 테이블에 잡아놓은 wr_reply 사이즈만큼만 가능합니다. - if (strlen($reply_array[wr_reply]) == 10) + if (strlen($reply_array['wr_reply']) == 10) alert('더 이상 답변하실 수 없습니다.'.PHP_EOL.PHP_EOL.'답변은 10단계 까지만 가능합니다.'); - $reply_len = strlen($reply_array[wr_reply]) + 1; - if ($board[bo_reply_order]) { + $reply_len = strlen($reply_array['wr_reply']) + 1; + if ($board['bo_reply_order']) { $begin_reply_char = 'A'; $end_reply_char = 'Z'; $reply_number = +1; - $sql = " select MAX(SUBSTRING(wr_reply, {$reply_len}, 1)) as reply from {$write_table} where wr_num = '{$reply_array[wr_num]}' and SUBSTRING(wr_reply, {$reply_len}, 1) <> '' "; + $sql = " select MAX(SUBSTRING(wr_reply, {$reply_len}, 1)) as reply from {$write_table} where wr_num = '{$reply_array['wr_num']}' and SUBSTRING(wr_reply, {$reply_len}, 1) <> '' "; } else { $begin_reply_char = 'Z'; $end_reply_char = 'A'; $reply_number = -1; - $sql = " select MIN(SUBSTRING(wr_reply, {$reply_len}, 1)) as reply from {$write_table} where wr_num = '{$reply_array[wr_num]}' and SUBSTRING(wr_reply, {$reply_len}, 1) <> '' "; + $sql = " select MIN(SUBSTRING(wr_reply, {$reply_len}, 1)) as reply from {$write_table} where wr_num = '{$reply_array['wr_num']}' and SUBSTRING(wr_reply, {$reply_len}, 1) <> '' "; } - if ($reply_array[wr_reply]) $sql .= " and wr_reply like '{$reply_array[wr_reply]}%' "; + if ($reply_array['wr_reply']) $sql .= " and wr_reply like '{$reply_array['wr_reply']}%' "; $row = sql_fetch($sql); - if (!$row[reply]) + if (!$row['reply']) $reply_char = $begin_reply_char; - else if ($row[reply] == $end_reply_char) // A~Z은 26 입니다. + else if ($row['reply'] == $end_reply_char) // A~Z은 26 입니다. alert('더 이상 답변하실 수 없습니다.'.PHP_EOL.PHP_EOL.'답변은 26개 까지만 가능합니다.'); else - $reply_char = chr(ord($row[reply]) + $reply_number); + $reply_char = chr(ord($row['reply']) + $reply_number); - $reply = $reply_array[wr_reply] . $reply_char; + $reply = $reply_array['wr_reply'] . $reply_char; $title_msg = '글답변'; } @@ -175,7 +175,7 @@ if ($group['gr_use_access']) { ; // 통과 } else { // 그룹접근 - $sql = " select gr_id from {$g4[group_member_table]} where gr_id = '{$board[gr_id]}' and mb_id = '{$member[mb_id]}' "; + $sql = " select gr_id from {$g4['group_member_table']} where gr_id = '{$board['gr_id']}' and mb_id = '{$member['mb_id']}' "; $row = sql_fetch($sql); if (!$row['gr_id']) alert('접근 권한이 없으므로 글쓰기가 불가합니다.'.PHP_EOL.PHP_EOL.'궁금하신 사항은 관리자에게 문의 바랍니다.'); @@ -371,29 +371,26 @@ if ($is_dhtml_editor && $editor->js) { include_once($g4['path'].'/head.sub.php'); include_once('./board_head.php'); -// 자동등록방지 -//include_once ('./norobot.inc.php'); - //-------------------------------------------------------------------------- // 가변 파일 $file_script = ''; $file_length = -1; // 수정의 경우 파일업로드 필드가 가변적으로 늘어나야 하고 삭제 표시도 해주어야 합니다. if ($w == 'u') { - for ($i=0; $i<$file[count]; $i++) { - $row = sql_fetch(" select bf_file, bf_content from {$g4[board_file_table]} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); - if ($row[bf_file]) { - $file_script .= 'add_file("'.$file[$i][source].'('.$file[$i][size].') 파일 삭제'; + for ($i=0; $i<$file['count']; $i++) { + $row = sql_fetch(" select bf_file, bf_content from {$g4['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); + if ($row['bf_file']) { + $file_script .= 'add_file("'.$file[$i]['source'].'('.$file[$i]['size'].') 파일 삭제'; if ($is_file_content) - //$file_script .= '
'; + //$file_script .= '
'; // 첨부파일설명에서 ' 또는 " 입력되면 오류나는 부분 수정 - $file_script .= '
'; + $file_script .= '
'; $file_script .= '\");'.PHP_EOL; } else $file_script .= 'add_file("");'.PHP_EOL; } - $file_length = $file[count] - 1; + $file_length = $file['count'] - 1; } if ($file_length < 0) { diff --git a/bbs/write_update.php b/bbs/write_update.php index cf8271f2c..a20f30817 100644 --- a/bbs/write_update.php +++ b/bbs/write_update.php @@ -1,5 +1,4 @@ 50) { include_once($g4['path'].'/lib/trackback.lib.php'); -/* -$filters = explode(",", $config[cf_filter]); -for ($i=0; $i= ($g4[server_time] - $config[cf_delay_sec]) && !$is_admin) + if ($_SESSION["ss_datetime"] >= ($g4['server_time'] - $config['cf_delay_sec']) && !$is_admin) alert('너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.'); - set_session("ss_datetime", $g4[server_time]); + set_session("ss_datetime", $g4['server_time']); // 동일내용 연속 등록 불가 $row = sql_fetch(" select MD5(CONCAT(wr_ip, wr_subject, wr_content)) as prev_md5 from $write_table order by wr_id desc limit 1 "); - $curr_md5 = md5($_SERVER[REMOTE_ADDR].$wr_subject.$wr_content); - if ($row[prev_md5] == $curr_md5 && !$is_admin) + $curr_md5 = md5($_SERVER['REMOTE_ADDR'].$wr_subject.$wr_content); + if ($row['prev_md5'] == $curr_md5 && !$is_admin) alert('동일한 내용을 연속해서 등록할 수 없습니다.'); } @@ -129,14 +130,14 @@ if ($w == "" || $w == "r") if (!$is_member) { if ($w=='' || $w=='r') { $key = get_session("captcha_keystring"); - if (!($key && $key == $_POST[wr_key])) { + if (!($key && $key == $_POST['wr_key'])) { session_unregister("captcha_keystring"); alert('정상적인 접근이 아닌것 같습니다.'); } } } -if (!isset($_POST[wr_subject]) || !trim($_POST[wr_subject])) +if (!isset($_POST['wr_subject']) || !trim($_POST['wr_subject'])) alert('제목을 입력하여 주십시오.'); // 디렉토리가 없다면 생성합니다. (퍼미션도 변경하구요.) @@ -145,7 +146,7 @@ if (!isset($_POST[wr_subject]) || !trim($_POST[wr_subject])) // "인터넷옵션 > 보안 > 사용자정의수준 > 스크립팅 > Action 스크립팅 > 사용 안 함" 일 경우의 오류 처리 // 이 옵션을 사용 안 함으로 설정할 경우 어떤 스크립트도 실행 되지 않습니다. -//if (!$_POST[wr_content]) die ("내용을 입력하여 주십시오."); +//if (!$_POST['wr_content']) die ("내용을 입력하여 주십시오."); $chars_array = array_merge(range(0,9), range('a','z'), range('A','Z')); //print_r2($chars_array); exit; @@ -153,44 +154,45 @@ $chars_array = array_merge(range(0,9), range('a','z'), range('A','Z')); // 가변 파일 업로드 $file_upload_msg = ''; $upload = array(); -for ($i=0; $i $board[bo_upload_size]) - { - $file_upload_msg .= '"'.$filename.'" 파일의 용량('.number_format($filesize).' 바이트)이 게시판에 설정('.number_format($board[bo_upload_size]).' 바이트)된 값보다 크므로 업로드 하지 않습니다.'.PHP_EOL; + if (!$is_admin && $filesize > $board['bo_upload_size']) { + $file_upload_msg .= '"'.$filename.'" 파일의 용량('.number_format($filesize).' 바이트)이 게시판에 설정('.number_format($board['bo_upload_size']).' 바이트)된 값보다 크므로 업로드 하지 않습니다.'.PHP_EOL; continue; } @@ -201,67 +203,62 @@ for ($i=0; $i 16) - { - //$file_upload_msg .= "\'{$filename}\' 파일이 이미지나 플래시 파일이 아닙니다.\\n"; + if ( preg_match("/\.({$config['cf_image_extension']})$/i", $filename) || + preg_match("/\.({$config['cf_flash_extension']})$/i", $filename) ) { + if ($timg['2'] < 1 || $timg['2'] > 16) continue; - } } //================================================================= - $upload[$i][image] = $timg; + $upload[$i]['image'] = $timg; // 4.00.11 - 글답변에서 파일 업로드시 원글의 파일이 삭제되는 오류를 수정 - if ($w == 'u') - { + if ($w == 'u') { // 존재하는 파일이 있다면 삭제합니다. - $row = sql_fetch(" select bf_file from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$i' "); - @unlink($g4['path'].'/data/file/'.$bo_table.'/'.$row[bf_file]); + $row = sql_fetch(" select bf_file from {$g4['board_file_table']} where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$i' "); + @unlink($g4['path'].'/data/file/'.$bo_table.'/'.$row['bf_file']); } // 프로그램 원래 파일명 - $upload[$i][source] = $filename; - $upload[$i][filesize] = $filesize; + $upload[$i]['source'] = $filename; + $upload[$i]['filesize'] = $filesize; // 아래의 문자열이 들어간 파일은 -x 를 붙여서 웹경로를 알더라도 실행을 하지 못하도록 함 $filename = preg_replace("/\.(php|phtm|htm|cgi|pl|exe|jsp|asp|inc)/i", "$0-x", $filename); // 접미사를 붙인 파일명 - //$upload[$i][file] = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr(md5(uniqid($g4[server_time])),0,8).'_'.urlencode($filename); + //$upload[$i]['file'] = abs(ip2long($_SERVER['REMOTE_ADDR'])).'_'.substr(md5(uniqid($g4['server_time'])),0,8).'_'.urlencode($filename); // 달빛온도님 수정 : 한글파일은 urlencode($filename) 처리를 할경우 '%'를 붙여주게 되는데 '%'표시는 미디어플레이어가 인식을 못하기 때문에 재생이 안됩니다. 그래서 변경한 파일명에서 '%'부분을 빼주면 해결됩니다. - //$upload[$i][file] = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr(md5(uniqid($g4[server_time])),0,8).'_'.str_replace('%', '', urlencode($filename)); + //$upload[$i]['file'] = abs(ip2long($_SERVER['REMOTE_ADDR'])).'_'.substr(md5(uniqid($g4['server_time'])),0,8).'_'.str_replace('%', '', urlencode($filename)); shuffle($chars_array); $shuffle = implode('', $chars_array); // 첨부파일 첨부시 첨부파일명에 공백이 포함되어 있으면 일부 PC에서 보이지 않거나 다운로드 되지 않는 현상이 있습니다. (길상여의 님 090925) - //$upload[$i][file] = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode($filename)); - $upload[$i][file] = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode(str_replace(' ', '_', $filename))); + //$upload[$i]['file'] = abs(ip2long($_SERVER['REMOTE_ADDR'])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode($filename)); + $upload[$i]['file'] = abs(ip2long($_SERVER['REMOTE_ADDR'])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode(str_replace(' ', '_', $filename))); - $dest_file = $g4['path'].'/data/file/'.$bo_table.'/'.$upload[$i][file]; + $dest_file = $g4['path'].'/data/file/'.$bo_table.'/'.$upload[$i]['file']; // 업로드가 안된다면 에러메세지 출력하고 죽어버립니다. - $error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES[bf_file][error][$i]); + $error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]); // 올라간 파일의 퍼미션을 변경합니다. chmod($dest_file, 0606); - //$upload[$i][image] = @getimagesize($dest_file); + //$upload[$i]['image'] = @getimagesize($dest_file); } } if ($w == '' || $w == 'r') { - if ($member[mb_id]) + if ($member['mb_id']) { - $mb_id = $member[mb_id]; - $wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick]; - $wr_password = $member[mb_password]; - $wr_email = $member[mb_email]; - $wr_homepage = $member[mb_homepage]; + $mb_id = $member['mb_id']; + $wr_name = $board['bo_use_name'] ? $member['mb_name'] : $member['mb_nick']; + $wr_password = $member['mb_password']; + $wr_email = $member['mb_email']; + $wr_homepage = $member['mb_homepage']; } else { @@ -277,10 +274,10 @@ if ($w == '' || $w == 'r') { // 답변의 원글이 비밀글이라면 패스워드는 원글과 동일하게 넣는다. if ($secret) - $wr_password = $wr[wr_password]; + $wr_password = $wr['wr_password']; $wr_id = $wr_id . $reply; - $wr_num = $write[wr_num]; + $wr_num = $write['wr_num']; $wr_reply = $reply; } else @@ -305,14 +302,14 @@ if ($w == '' || $w == 'r') wr_hit = 0, wr_good = 0, wr_nogood = 0, - mb_id = '{$member[mb_id]}', + mb_id = '{$member['mb_id']}', wr_password = '{$wr_password}', wr_name = '{$wr_name}', wr_email = '{$wr_email}', wr_homepage = '{$wr_homepage}', - wr_datetime = '{$g4[time_ymdhis]}', - wr_last = '{$g4[time_ymdhis]}', - wr_ip = '{$_SERVER[REMOTE_ADDR]}', + wr_datetime = '{$g4['time_ymdhis']}', + wr_last = '{$g4['time_ymdhis']}', + wr_ip = '{$_SERVER['REMOTE_ADDR']}', wr_1 = '{$wr_1}', wr_2 = '{$wr_2}', wr_3 = '{$wr_3}', @@ -331,32 +328,26 @@ if ($w == '' || $w == 'r') sql_query(" update {$write_table} set wr_parent = '{$wr_id}' where wr_id = '{$wr_id}' "); // 새글 INSERT - //sql_query(" insert into $g4[board_new_table] ( bo_table, wr_id, wr_parent, bn_datetime ) values ( '$bo_table', '$wr_id', '$wr_id', '$g4[time_ymdhis]' ) "); - sql_query(" insert into {$g4[board_new_table]} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '{$g4[time_ymdhis]}', '{$member[mb_id]}' ) "); + //sql_query(" insert into $g4['board_new_table'] ( bo_table, wr_id, wr_parent, bn_datetime ) values ( '$bo_table', '$wr_id', '$wr_id', '$g4['time_ymdhis']' ) "); + sql_query(" insert into {$g4['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '{$g4['time_ymdhis']}', '{$member['mb_id']}' ) "); // 게시글 1 증가 - sql_query("update {$g4[board_table]} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'"); + sql_query("update {$g4['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'"); // 쓰기 포인트 부여 - if ($w == '') - { - if ($notice) - { - $bo_notice = $wr_id.PHP_EOL.$board[bo_notice]; - sql_query(" update {$g4[board_table]} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); + if ($w == '') { + if ($notice) { + $bo_notice = $wr_id.PHP_EOL.$board['bo_notice']; + sql_query(" update {$g4['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); } - insert_point($member[mb_id], $board[bo_write_point], '{$board[bo_subject]} {$wr_id} 글쓰기', $bo_table, $wr_id, '쓰기'); - } - else - { + insert_point($member['mb_id'], $board['bo_write_point'], "{$board['bo_subject']} {$wr_id} 글쓰기", $bo_table, $wr_id, '쓰기'); + } else { // 답변은 코멘트 포인트를 부여함 // 답변 포인트가 많은 경우 코멘트 대신 답변을 하는 경우가 많음 - insert_point($member[mb_id], $board[bo_comment_point], '{$board[bo_subject]} {$wr_id} 글답변', $bo_table, $wr_id, '쓰기'); + insert_point($member['mb_id'], $board['bo_comment_point'], "{$board['bo_subject']} {$wr_id} 글답변", $bo_table, $wr_id, '쓰기'); } -} -else if ($w == 'u') -{ +} else if ($w == 'u') { if (get_session('ss_bo_table') != $_POST['bo_table'] || get_session('ss_wr_id') != $_POST['wr_id']) { alert('올바른 방법으로 수정하여 주십시오.'); } @@ -364,41 +355,41 @@ else if ($w == 'u') if ($is_admin == 'super') // 최고관리자 통과 ; else if ($is_admin == 'group') { // 그룹관리자 - $mb = get_member($write[mb_id]); - if ($member[mb_id] != $group[gr_admin]) // 자신이 관리하는 그룹인가? + $mb = get_member($write['mb_id']); + if ($member['mb_id'] != $group['gr_admin']) // 자신이 관리하는 그룹인가? alert('자신이 관리하는 그룹의 게시판이 아니므로 수정할 수 없습니다.'); - else if ($member[mb_level] < $mb[mb_level]) // 자신의 레벨이 크거나 같다면 통과 + else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과 alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.'); } else if ($is_admin == 'board') { // 게시판관리자이면 - $mb = get_member($write[mb_id]); - if ($member[mb_id] != $board[bo_admin]) // 자신이 관리하는 게시판인가? + $mb = get_member($write['mb_id']); + if ($member['mb_id'] != $board['bo_admin']) // 자신이 관리하는 게시판인가? alert('자신이 관리하는 게시판이 아니므로 수정할 수 없습니다.'); - else if ($member[mb_level] < $mb[mb_level]) // 자신의 레벨이 크거나 같다면 통과 + else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과 alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.'); - } else if ($member[mb_id]) { - if ($member[mb_id] != $write[mb_id]) + } else if ($member['mb_id']) { + if ($member['mb_id'] != $write['mb_id']) alert('자신의 글이 아니므로 수정할 수 없습니다.'); } else { - if ($write[mb_id]) + if ($write['mb_id']) alert('로그인 후 수정하세요.', './login.php?url='.urlencode('./board.php?bo_table='.$bo_table.'&wr_id='.$wr_id)); } - if ($member[mb_id]) + if ($member['mb_id']) { // 자신의 글이라면 - if ($member[mb_id] == $wr[mb_id]) + if ($member['mb_id'] == $wr['mb_id']) { - $mb_id = $member[mb_id]; - $wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick]; - $wr_email = $member[mb_email]; - $wr_homepage = $member[mb_homepage]; + $mb_id = $member['mb_id']; + $wr_name = $board['bo_use_name'] ? $member['mb_name'] : $member['mb_nick']; + $wr_email = $member['mb_email']; + $wr_homepage = $member['mb_homepage']; } else { - $mb_id = $wr[mb_id]; - $wr_name = $wr[wr_name]; - $wr_email = $wr[wr_email]; - $wr_homepage = $wr[wr_homepage]; + $mb_id = $wr['mb_id']; + $wr_name = $wr['wr_name']; + $wr_email = $wr['wr_email']; + $wr_homepage = $wr['wr_homepage']; } } else @@ -412,7 +403,7 @@ else if ($w == 'u') $sql_ip = ''; if (!$is_admin) - $sql_ip = " , wr_ip = '{$_SERVER[REMOTE_ADDR]}' "; + $sql_ip = " , wr_ip = '{$_SERVER['REMOTE_ADDR']}' "; $sql = " update {$write_table} set ca_name = '{$ca_name}', @@ -437,21 +428,21 @@ else if ($w == 'u') wr_10= '{$wr_10}' {$sql_ip} {$sql_password} - where wr_id = '{$wr[wr_id]}' "; + where wr_id = '{$wr['wr_id']}' "; sql_query($sql); // 분류가 수정되는 경우 해당되는 코멘트의 분류명도 모두 수정함 // 코멘트의 분류를 수정하지 않으면 검색이 제대로 되지 않음 - $sql = " update {$write_table} set ca_name = '{$ca_name}' where wr_parent = '{$wr[wr_id]}' "; + $sql = " update {$write_table} set ca_name = '{$ca_name}' where wr_parent = '{$wr['wr_id']}' "; sql_query($sql); if ($notice) { - //if (!preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board[bo_notice])) + //if (!preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board['bo_notice'])) if (!in_array((int)$wr_id, $notice_array)) { - $bo_notice = $wr_id . '\n' . $board[bo_notice]; - sql_query(" update {$g4[board_table]} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); + $bo_notice = $wr_id . '\n' . $board['bo_notice']; + sql_query(" update {$g4['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); } } else @@ -461,8 +452,8 @@ else if ($w == 'u') if ((int)$wr_id != (int)$notice_array[$i]) $bo_notice .= $notice_array[$i] . ','; $bo_notice = trim($bo_notice); - //$bo_notice = preg_replace("/^".$wr_id."[\n]?$/m", "", $board[bo_notice]); - sql_query(" update {$g4[board_table]} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); + //$bo_notice = preg_replace("/^".$wr_id."[\n]?$/m", "", $board['bo_notice']); + sql_query(" update {$g4['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' "); } } @@ -476,22 +467,22 @@ for ($i=0; $i=0; $i--) +$row = sql_fetch(" select max(bf_no) as max_bf_no from {$g4['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' "); +for ($i=(int)$row['max_bf_no']; $i>=0; $i--) { - $row2 = sql_fetch(" select bf_file from {$g4[board_file_table]} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); + $row2 = sql_fetch(" select bf_file from {$g4['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); // 정보가 있다면 빠집니다. - if ($row2[bf_file]) break; + if ($row2['bf_file']) break; // 그렇지 않다면 정보를 삭제합니다. - sql_query(" delete from {$g4[board_file_table]} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); + sql_query(" delete from {$g4['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' "); } //------------------------------------------------------------------------------ @@ -546,7 +537,7 @@ if ($secret) set_session("ss_secret_{$bo_table}_{$wr_num}", TRUE); // 메일발송 사용 (수정글은 발송하지 않음) -if (!($w == 'u' || $w == 'cu') && $config[cf_email_use] && $board[bo_use_email]) +if (!($w == 'u' || $w == 'cu') && $config['cf_email_use'] && $board['bo_use_email']) { // 관리자의 정보를 얻고 $super_admin = get_admin('super'); @@ -566,8 +557,8 @@ if (!($w == 'u' || $w == 'cu') && $config[cf_email_use] && $board[bo_use_email]) $warr = array( ''=>'입력', 'u'=>'수정', 'r'=>'답변', 'c'=>'코멘트', 'cu'=>'코멘트 수정' ); $str = $warr[$w]; - $subject = '"'.$board[bo_subject].'" 게시판에 '.$str.'글이 올라왔습니다.'; - $link_url = $g4[url].'/'.$g4[bbs].'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&'.$qstr; + $subject = '"'.$board['bo_subject'].'" 게시판에 '.$str.'글이 올라왔습니다.'; + $link_url = $g4['url'].'/'.$g4['bbs'].'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&'.$qstr; include_once($g4['path'].'/lib/mailer.lib.php'); @@ -578,25 +569,25 @@ if (!($w == 'u' || $w == 'cu') && $config[cf_email_use] && $board[bo_use_email]) $array_email = array(); // 게시판관리자에게 보내는 메일 - if ($config[cf_email_wr_board_admin]) $array_email[] = $board_admin[mb_email]; + if ($config['cf_email_wr_board_admin']) $array_email[] = $board_admin['mb_email']; // 게시판그룹관리자에게 보내는 메일 - if ($config[cf_email_wr_group_admin]) $array_email[] = $group_admin[mb_email]; + if ($config['cf_email_wr_group_admin']) $array_email[] = $group_admin['mb_email']; // 최고관리자에게 보내는 메일 - if ($config[cf_email_wr_super_admin]) $array_email[] = $super_admin[mb_email]; + if ($config['cf_email_wr_super_admin']) $array_email[] = $super_admin['mb_email']; // 옵션에 메일받기가 체크되어 있고, 게시자의 메일이 있다면 - if (strstr($wr[wr_option], 'mail') && $wr[wr_email]) { + if (strstr($wr['wr_option'], 'mail') && $wr['wr_email']) { // 원글 메일발송에 체크가 되어 있다면 - if ($config[cf_email_wr_write]) $array_email[] = $wr[wr_email]; + if ($config['cf_email_wr_write']) $array_email[] = $wr['wr_email']; // 코멘트 쓴 모든이에게 메일 발송이 되어 있다면 (자신에게는 발송하지 않는다) - if ($config[cf_email_wr_comment_all]) { + if ($config['cf_email_wr_comment_all']) { $sql = " select distinct wr_email from {$write_table} - where wr_email not in ( '{$wr[wr_email]}', '{$member[mb_email]}', '' ) + where wr_email not in ( '{$wr['wr_email']}', '{$member['mb_email']}', '' ) and wr_parent = '{$wr_id}' "; $result = sql_query($sql); while ($row=sql_fetch_array($result)) - $array_email[] = $row[wr_email]; + $array_email[] = $row['wr_email']; } } @@ -614,9 +605,9 @@ if (!($w == 'u' || $w == 'cu') && $config[cf_email_use] && $board[bo_use_email]) // 트랙백 주소가 있다면 if (($w != 'u' && $wr_trackback) || ($w=='u' && $wr_trackback && $re_trackback)) { - $trackback_url = $g4[url].'/'.$g4[bbs].'/tb.php/'.$bo_table.'/'.$wr_id; + $trackback_url = $g4['url'].'/'.$g4['bbs'].'/tb.php/'.$bo_table.'/'.$wr_id; $msg = ""; - $msg = send_trackback($wr_trackback, $trackback_url, $wr_subject, $board[bo_subject], $_POST[wr_content]); + $msg = send_trackback($wr_trackback, $trackback_url, $wr_subject, $board['bo_subject'], $_POST['wr_content']); if ($msg) { echo ''.PHP_EOL; echo ''; @@ -624,9 +615,8 @@ if (($w != 'u' && $wr_trackback) || ($w=='u' && $wr_trackback && $re_trackback)) } @include_once($board_skin_path.'/write_update.tail.skin.php'); - -if ($g4[https_url]) - $https_url = $g4[url].'/'.$g4[bbs]; +if ($g4['https_url']) + $https_url = $g4['url'].'/'.$g4['bbs']; else $https_url = '.'; diff --git a/lib/common.lib.php b/lib/common.lib.php index 2317fab3d..f78ac11c3 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -66,6 +66,7 @@ function print_r2($var) // header("location:URL") 을 대체 function goto_url($url) { + $url = str_replace("&", "&", $url); echo ""; exit; } @@ -84,7 +85,7 @@ function set_session($session_name, $value) // 세션변수값 얻음 function get_session($session_name) { - return $_SESSION[$session_name]; + return isset($_SESSION[$session_name]) ? $_SESSION[$session_name] : ''; } @@ -115,7 +116,7 @@ function alert($msg='', $url='') if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.'; - //header("Content-Type: text/html; charset=$g4[charset]"); + //header("Content-Type: text/html; charset=$g4['charset']"); echo ""; echo ""; + else if (preg_match("/\.($config['cf_flash_extension'])$/i", $file)) + //return ""; + return ""; */ //============================================================================================= // 동영상 파일에 악성코드를 심는 경우를 방지하기 위해 경로를 노출하지 않음 //--------------------------------------------------------------------------------------------- /* - else if (preg_match("/\.($config[cf_movie_extension])$/i", $file)) - //return ""; - return ""; + else if (preg_match("/\.($config['cf_movie_extension'])$/i", $file)) + //return ""; + return ""; */ //============================================================================================= } @@ -979,11 +980,11 @@ function view_link($view, $number, $attribute) { global $config; - if ($view[link][$number][link]) + if ($view['link'][$number]['link']) { if (!preg_match("/target/i", $attribute)) - $attribute .= " target='$config[cf_link_target]'"; - return "{$view[link][$number][link]}"; + $attribute .= " target='$config['cf_link_target']'"; + return "{$view['link'][$number]['link']}"; } else return "{".$number."번 링크 없음}"; @@ -1113,7 +1114,7 @@ function sql_query($sql, $error=TRUE) function sql_fetch($sql, $error=TRUE) { $result = sql_query($sql, $error); - //$row = @sql_fetch_array($result) or die("

$sql

" . mysql_errno() . " : " . mysql_error() . "

error file : $_SERVER[PHP_SELF]"); + //$row = @sql_fetch_array($result) or die("

$sql

" . mysql_errno() . " : " . mysql_error() . "

error file : $_SERVER['PHP_SELF']"); $row = sql_fetch_array($result); return $row; } @@ -1232,9 +1233,9 @@ function referer_check($url='') global $g4; if (!$url) - $url = $g4[url]; + $url = $g4['url']; - if (!preg_match("/^http[s]?:\/\/".$_SERVER[HTTP_HOST]."/", $_SERVER[HTTP_REFERER])) + if (!preg_match("/^http['s']?:\/\/".$_SERVER['HTTP_HOST']."/", $_SERVER['HTTP_REFERER'])) alert("제대로 된 접근이 아닌것 같습니다.", $url); */ } @@ -1267,9 +1268,9 @@ function date_select($date, $name='') // 년 $s .= ">사용 (댓글수 클릭시 새창으로 보임) - - - - - - diff --git a/adm/board_form_update.php b/adm/board_form_update.php index 26e6c134c..9e393e949 100644 --- a/adm/board_form_update.php +++ b/adm/board_form_update.php @@ -87,7 +87,6 @@ $sql_common = " gr_id = '{$_POST['gr_id']}', bo_use_secret = '{$_POST[bo_use_secret]}', bo_use_dhtml_editor = '{$_POST[bo_use_dhtml_editor]}', bo_use_rss_view = '{$_POST[bo_use_rss_view]}', - bo_use_comment = '{$_POST[bo_use_comment]}', bo_use_good = '{$_POST[bo_use_good]}', bo_use_nogood = '{$_POST[bo_use_nogood]}', bo_use_name = '{$_POST[bo_use_name]}', @@ -262,7 +261,6 @@ if ($chk_category_list) { } if ($chk_use_sideview) $s .= " , bo_use_sideview = '{$bo_use_sideview}' "; if ($chk_use_file_content) $s .= " , bo_use_file_content = '{$bo_use_file_content}' "; -if ($chk_use_comment) $s .= " , bo_use_comment = '{$bo_use_comment}' "; if ($chk_use_secret) $s .= " , bo_use_secret = '{$bo_use_secret}' "; if ($chk_use_dhtml_editor) $s .= " , bo_use_dhtml_editor = '{$bo_use_dhtml_editor}' "; if ($chk_use_rss_view) $s .= " , bo_use_rss_view = '{$bo_use_rss_view}' "; diff --git a/bbs/board.php b/bbs/board.php index 8e29f8cc3..072cb041a 100644 --- a/bbs/board.php +++ b/bbs/board.php @@ -1,16 +1,8 @@ '; -if (!($board['bo_use_comment'] && $cwin)) { - // 게시물 아이디가 있다면 게시물 보기를 INCLUDE - if (isset($wr_id) && $wr_id) { - include_once('./view.php'); - } - - // 전체목록보이기 사용이 "예" 또는 wr_id 값이 없다면 목록을 보임 - //if ($board['bo_use_list_view'] || empty($wr_id)) - if ($member['mb_level'] >= $board['bo_list_level'] && $board['bo_use_list_view'] || empty($wr_id)) - include_once ('./list.php'); - - include_once('./board_tail.php'); +// 게시물 아이디가 있다면 게시물 보기를 INCLUDE +if (isset($wr_id) && $wr_id) { + include_once('./view.php'); } -else - include_once('./view_comment.php'); + +// 전체목록보이기 사용이 "예" 또는 wr_id 값이 없다면 목록을 보임 +//if ($board['bo_use_list_view'] || empty($wr_id)) +if ($member['mb_level'] >= $board['bo_list_level'] && $board['bo_use_list_view'] || empty($wr_id)) + include_once ('./list.php'); + +include_once('./board_tail.php'); echo "\\n\\n"; diff --git a/bbs/delete_comment.php b/bbs/delete_comment.php index 4f61e0f0b..367e1f64e 100644 --- a/bbs/delete_comment.php +++ b/bbs/delete_comment.php @@ -83,5 +83,5 @@ sql_query(" delete from {$g4[board_new_table]} where bo_table = '{$bo_table}' an // 4.1 @include_once($board_skin_path.'/delete_comment.tail.skin.php'); -goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$write[wr_parent].'&cwin='.$cwin.'&page='.$page. $qstr); +goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$write[wr_parent].'&page='.$page. $qstr); ?> diff --git a/bbs/view_comment.php b/bbs/view_comment.php index 1c077946f..eec2c658a 100644 --- a/bbs/view_comment.php +++ b/bbs/view_comment.php @@ -62,7 +62,7 @@ for ($i=0; $row=sql_fetch_array($result); $i++) { if ($row['mb_id'] == $member['mb_id'] || $is_admin) { - $list[$i]['del_link'] = './delete_comment.php?bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&token='.$token.'&cwin='.$cwin.'&page='.$page.$qstr; + $list[$i]['del_link'] = './delete_comment.php?bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&token='.$token.'&page='.$page.$qstr; $list[$i]['is_edit'] = true; $list[$i]['is_del'] = true; } @@ -70,7 +70,7 @@ for ($i=0; $row=sql_fetch_array($result); $i++) else { if (!$row['mb_id']) { - $list[$i]['del_link'] = './password.php?w=x&bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&cwin='.$cwin.'&page='.$page.$qstr; + $list[$i]['del_link'] = './password.php?w=x&bo_table='.$bo_table.'&comment_id='.$row['wr_id'].'&page='.$page.$qstr; $list[$i]['is_del'] = true; } } diff --git a/bbs/write.php b/bbs/write.php index 0a03e27ae..2dd9b7e5b 100644 --- a/bbs/write.php +++ b/bbs/write.php @@ -8,10 +8,7 @@ set_session('ss_wr_id', $wr_id); // 090713 if (!$board['bo_table']) { - if ($cwin) // 코멘트 보기 - alert_close('존재하지 않는 게시판입니다.', $g4['path']); - else - alert('존재하지 않는 게시판입니다.', $g4['path']); + alert('존재하지 않는 게시판입니다.', $g4['path']); } if (!$bo_table) { diff --git a/bbs/write_comment_update.php b/bbs/write_comment_update.php index 151decd8d..a1b4d62fa 100644 --- a/bbs/write_comment_update.php +++ b/bbs/write_comment_update.php @@ -339,5 +339,5 @@ else if ($w == 'cu') // 코멘트 수정 @include_once($board_skin_path.'/write_comment_update.skin.php'); @include_once($board_skin_path.'/write_comment_update.tail.skin.php'); -goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$wr[wr_parent].'&page='.$page.$qstr.'&cwin='.$cwin.'#c_'.$comment_id); +goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$wr[wr_parent].'&page='.$page.$qstr.'&#c_'.$comment_id); ?> diff --git a/lib/common.lib.php b/lib/common.lib.php index f78ac11c3..c8096c574 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -339,10 +339,7 @@ function get_list($write_row, $board, $skin_path, $subject_len=40) $list['ca_name_href'] = $g4['bbs_path'].'/board.php?bo_table='.$board['bo_table'].'&sca='.urlencode($list['ca_name']); $list['href'] = $g4['bbs_path'].'/board.php?bo_table='.$board['bo_table'].'&wr_id='.$list['wr_id'].$qstr; - if ($board['bo_use_comment']) - $list['comment_href'] = "javascript:win_comment('{$g4['bbs_path']}/board.php?bo_table={$board['bo_table']}&wr_id={$list['wr_id']}&cwin=1');"; - else - $list['comment_href'] = $list['href']; + $list['comment_href'] = $list['href']; $list['icon_new'] = ''; if ($list['wr_datetime'] >= date("Y-m-d H:i:s", $g4['server_time'] - ($board['bo_new'] * 3600))) diff --git a/skin/board/basic/view_comment.skin.php b/skin/board/basic/view_comment.skin.php index b25a0ec77..b47f97e39 100644 --- a/skin/board/basic/view_comment.skin.php +++ b/skin/board/basic/view_comment.skin.php @@ -8,8 +8,6 @@ var char_min = parseInt(); // 최소 var char_max = parseInt(); // 최대 -
-
'> - @@ -315,5 +312,3 @@ function comment_delete(url) comment_box('', 'c'); // 코멘트 입력폼이 보이도록 처리하기위해서 추가 (root님) - -



diff --git a/skin/board/neo/view_comment.skin.php b/skin/board/neo/view_comment.skin.php index 9a2c55fcc..41f833f48 100644 --- a/skin/board/neo/view_comment.skin.php +++ b/skin/board/neo/view_comment.skin.php @@ -1,7 +1,5 @@ - -

댓글

@@ -71,7 +67,6 @@ var char_max = parseInt(); // 최대 -
@@ -278,5 +273,3 @@ var char_max = parseInt(); // 최대
- -