사용자단 따옴표 작업 bbs/write_update.php 할 차례

This commit is contained in:
whitedot
2012-11-30 19:10:49 +09:00
parent 68ae98cd95
commit de88c60cd2
54 changed files with 1264 additions and 1247 deletions

View File

@ -8,45 +8,45 @@ set_session('ss_wr_id', $_REQUEST['wr_id']);
if (!$board[bo_table])
{
if ($cwin) // 코멘트 보기
alert_close("존재하지 않는 게시판입니다.", $g4['path']);
alert_close('존재하지 않는 게시판입니다.', $g4['path']);
else
alert("존재하지 않는 게시판입니다.", $g4['path']);
alert('존재하지 않는 게시판입니다.', $g4['path']);
}
if (!$bo_table)
alert("bo_table 값이 넘어오지 않았습니다..PHP_EOL.PHP_EOL.write.php?bo_table=code 와 같은 방식으로 넘겨 주세요.", $g4['path']);
alert('bo_table 값이 넘어오지 않았습니다.'.PHP_EOL.PHP_EOL.'write.php?bo_table=code 와 같은 방식으로 넘겨 주세요.', $g4['path']);
@include_once ("$g4['path']/skin/board/write.head.skin.php");
@include_once ("$board_skin_path/write.head.skin.php");
@include_once ($g4['path'].'/skin/board/write.head.skin.php');
@include_once ($board_skin_path.'/write.head.skin.php');
$notice_array = explode("\n", trim($board[bo_notice]));
$notice_array = explode(',', trim($board[bo_notice]));
if ($w == "")
{
if (isset($wr_id))
alert("글쓰기에는 \$wr_id 값을 사용하지 않습니다.", "$g4['bbs_path']/board.php?bo_table=$bo_table");
alert('글쓰기에는 \$wr_id 값을 사용하지 않습니다.', $g4['bbs_path'].'/board.php?bo_table='.$bo_table);
if ($member[mb_level] < $board[bo_write_level]) {
if ($member[mb_id])
alert("글을 쓸 권한이 없습니다.");
alert('글을 쓸 권한이 없습니다.');
else
alert("글을 쓸 권한이 없습니다..PHP_EOL.PHP_EOL.회원이시라면 로그인 후 이용해 보십시오.", "./login.php?$qstr&amp;url=".urlencode("$_SERVER[PHP_SELF]?bo_table=$bo_table"));
alert('글을 쓸 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&amp;url='.urlencode($_SERVER[PHP_SELF].'?bo_table='.$bo_table));
}
/*
if ($member[mb_point] + $board[bo_write_point] < 0 && !$is_admin)
alert("보유하신 포인트(".number_format($member[mb_point]).")가 없거나 모자라서 글쓰기(".number_format($board[bo_write_point]).")가 불가합니다..PHP_EOL.PHP_EOL.포인트를 적립하신 후 다시 글쓰기 해 주십시오.");
alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글쓰기('.number_format($board[bo_write_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글쓰기 해 주십시오.');
*/
// 음수도 true 인것을 왜 이제야 알았을까?
//$tmp_point = $member[mb_point] ? $member[mb_point] : 0;
$tmp_point = ($member[mb_point] > 0) ? $member[mb_point] : 0;
if ($tmp_point + $board[bo_write_point] < 0 && !$is_admin)
alert("보유하신 포인트(".number_format($member[mb_point]).")가 없거나 모자라서 글쓰기(".number_format($board[bo_write_point]).")가 불가합니다..PHP_EOL.PHP_EOL.포인트를 적립하신 후 다시 글쓰기 해 주십시오.");
alert('보유하신 포인트('.number_format($member[mb_point]).')가 없거나 모자라서 글쓰기('.number_format($board[bo_write_point]).')가 불가합니다.'.PHP_EOL.PHP_EOL.'포인트를 적립하신 후 다시 글쓰기 해 주십시오.');
$title_msg = "글쓰기";
$title_msg = '글쓰기';
}
else if ($w == "u")
else if ($w == 'u')
{
// 김선용 1.00 : 글쓰기 권한과 수정은 별도로 처리되어야 함
//if ($member[mb_level] < $board[bo_write_level]) {
@ -54,9 +54,9 @@ else if ($w == "u")
;
else if ($member[mb_level] < $board[bo_write_level]) {
if ($member[mb_id])
alert("글을 수정할 권한이 없습니다.");
alert('글을 수정할 권한이 없습니다.');
else
alert("글을 수정할 권한이 없습니다..PHP_EOL.PHP_EOL.회원이시라면 로그인 후 이용해 보십시오.", "./login.php?$qstr&amp;url=".urlencode("$_SERVER[PHP_SELF]?bo_table=$bo_table"));
alert('글을 수정할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?'.$qstr.'&amp;url='.urlencode($_SERVER[PHP_SELF].'?bo_table='.$bo_table));
}
$len = strlen($write[wr_reply]);
@ -64,64 +64,64 @@ else if ($w == "u")
$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]'
$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_is_comment = 0 ";
$row = sql_fetch($sql);
if ($row[cnt] && !$is_admin)
alert("이 글과 관련된 답변글이 존재하므로 수정 할 수 없습니다..PHP_EOL.PHP_EOL.답변글이 있는 원글은 수정할 수 없습니다.");
alert('이 글과 관련된 답변글이 존재하므로 수정 할 수 없습니다.'.PHP_EOL.PHP_EOL.'답변글이 있는 원글은 수정할 수 없습니다.');
// 코멘트 달린 원글의 수정 여부
$sql = " select count(*) as cnt from $write_table
where wr_parent = '$wr_id'
and mb_id <> '$member[mb_id]'
$sql = " select count(*) as cnt from {$write_table}
where wr_parent = '{$wr_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]}건 이상 달린 원글은 수정할 수 없습니다.");
alert('이 글과 관련된 코멘트가 존재하므로 수정 할 수 없습니다.'.PHP_EOL.PHP_EOL.'코멘트가 '.$board[bo_count_modify].'건 이상 달린 원글은 수정할 수 없습니다.');
$title_msg = "글수정";
$title_msg = '글수정';
}
else if ($w == "r")
else if ($w == 'r')
{
if ($member[mb_level] < $board[bo_reply_level]) {
if ($member[mb_id])
alert("글을 답변할 권한이 없습니다.");
alert('글을 답변할 권한이 없습니다.');
else
alert("글을 답변할 권한이 없습니다..PHP_EOL.PHP_EOL.회원이시라면 로그인 후 이용해 보십시오.", "./login.php?$qstr&amp;url=".urlencode("$_SERVER[PHP_SELF]?bo_table=$bo_table"));
alert('글을 답변할 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', './login.php?$qstr&amp;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.포인트를 적립하신 후 다시 글답변 해 주십시오.");
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.포인트를 적립하신 후 다시 글답변 해 주십시오.");
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 (in_array((int)$wr_id, $notice_array))
alert("공지에는 답변 할 수 없습니다.");
alert('공지에는 답변 할 수 없습니다.');
//----------
// 4.06.13 : 비밀글을 타인이 열람할 수 있는 오류 수정 (헐랭이, 플록님께서 알려주셨습니다.)
// 코멘트에는 원글의 답변이 불가하므로
if ($write[wr_is_comment])
alert("정상적인 접근이 아닙니다.");
alert('정상적인 접근이 아닙니다.');
// 비밀글인지를 검사
if (strstr($write[wr_option], "secret")) {
if (strstr($write[wr_option], 'secret')) {
if ($write[mb_id]) {
// 회원의 경우는 해당 글쓴 회원 및 관리자
if (!($write[mb_id] == $member[mb_id] || $is_admin))
alert("비밀글에는 자신 또는 관리자만 답변이 가능합니다.");
alert('비밀글에는 자신 또는 관리자만 답변이 가능합니다.');
} else {
// 비회원의 경우는 비밀글에 답변이 불가함
if (!$is_admin)
alert("비회원의 비밀글에는 답변이 불가합니다.");
alert('비회원의 비밀글에는 답변이 불가합니다.');
}
}
//----------
@ -131,76 +131,76 @@ else if ($w == "r")
// 최대 답변은 테이블에 잡아놓은 wr_reply 사이즈만큼만 가능합니다.
if (strlen($reply_array[wr_reply]) == 10)
alert("더 이상 답변하실 수 없습니다..PHP_EOL.PHP_EOL.답변은 10단계 까지만 가능합니다.");
alert('더 이상 답변하실 수 없습니다.'.PHP_EOL.PHP_EOL.'답변은 10단계 까지만 가능합니다.');
$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])
$reply_char = $begin_reply_char;
else if ($row[reply] == $end_reply_char) // A~Z은 26 입니다.
alert("더 이상 답변하실 수 없습니다..PHP_EOL.PHP_EOL.답변은 26개 까지만 가능합니다.");
alert('더 이상 답변하실 수 없습니다.'.PHP_EOL.PHP_EOL.'답변은 26개 까지만 가능합니다.');
else
$reply_char = chr(ord($row[reply]) + $reply_number);
$reply = $reply_array[wr_reply] . $reply_char;
$title_msg = "글답변";
$title_msg = '글답변';
} else
alert("w 값이 제대로 넘어오지 않았습니다.");
alert('w 값이 제대로 넘어오지 않았습니다.');
// 그룹접근 가능
if ($group[gr_use_access])
{
if (!$member[mb_id])
alert("접근 권한이 없습니다..PHP_EOL.PHP_EOL.회원이시라면 로그인 후 이용해 보십시오.", "login.php?$qstr&amp;url=".urlencode("$_SERVER[PHP_SELF]?bo_table=$bo_table"));
alert('접근 권한이 없습니다.'.PHP_EOL.PHP_EOL.'회원이시라면 로그인 후 이용해 보십시오.', 'login.php?'.$qstr.'&amp;url='.urlencode($_SERVER[PHP_SELF]?bo_table=$bo_table));
if ($is_admin == 'super' || $group[gr_admin] == $member[mb_id] || $board[bo_admin] == $member[mb_id])
; // 통과
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.궁금하신 사항은 관리자에게 문의 바랍니다.");
alert('접근 권한이 없으므로 글쓰기가 불가합니다.'.PHP_EOL.PHP_EOL.'궁금하신 사항은 관리자에게 문의 바랍니다.');
}
}
$g4['title'] = "$group[gr_subject] > $board[bo_subject] > " . $title_msg;
$g4['title'] = $title_msg.' &gt; '.$board[bo_subject].' &gt; '.$group[gr_subject];
if (($w == "u" || $w == "r") && !$write[wr_id])
alert("글이 존재하지 않습니다..PHP_EOL.PHP_EOL.삭제되었거나 이동된 경우입니다.", $g4['path']);
if (($w == 'u' || $w == 'r') && !$write[wr_id])
alert('글이 존재하지 않습니다.'.PHP_EOL.PHP_EOL.'삭제되었거나 이동된 경우입니다.', $g4['path']);
$is_notice = false;
if ($is_admin && $w != "r")
if ($is_admin && $w != 'r')
{
$is_notice = true;
if ($w == "u")
if ($w == 'u')
{
// 답변 수정시 공지 체크 없음
if ($write[wr_reply])
$is_notice = false;
else
{
$notice_checked = "";
$notice_checked = '';
//if (preg_match("/^".$wr_id."/m", trim($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))
$notice_checked = "checked";
$notice_checked = 'checked';
}
}
}
@ -228,9 +228,9 @@ $is_mail = false;
if ($config[cf_email_use] && $board[bo_use_email])
$is_mail = true;
$recv_email_checked = "";
if ($w == "" || strstr($write[wr_option], "mail"))
$recv_email_checked = "checked";
$recv_email_checked = '';
if ($w == '' || strstr($write[wr_option], 'mail'))
$recv_email_checked = 'checked';
$is_name = false;
$is_password = false;
@ -266,7 +266,7 @@ $is_trackback = false;
if ($board[bo_use_trackback] && $member[mb_level] >= $board[bo_trackback_level])
$is_trackback = true;
if ($w == "" || $w == "r") {
if ($w == '' || $w == 'r') {
if ($member[mb_id]) {
$name = get_text(cut_str($write[wr_name],20));
$email = $member[mb_email];
@ -274,15 +274,15 @@ if ($w == "" || $w == "r") {
}
}
if ($w == "")
$password_required = "required";
else if ($w == "u") {
$password_required = "";
if ($w == '')
$password_required = 'required';
else if ($w == 'u') {
$password_required = '';
if (!$is_admin) {
if (!($member[mb_id] && $member[mb_id] == $write[mb_id]))
if (sql_password($wr_password) != $write[wr_password])
alert("패스워드가 틀립니다.");
alert('패스워드가 틀립니다.');
}
$name = get_text(cut_str($write[wr_name],20));
@ -290,56 +290,56 @@ else if ($w == "u") {
$homepage = get_text($write[wr_homepage]);
for ($i=1; $i<=$g4[link_count]; $i++) {
$write["wr_link".$i] = get_text($write["wr_link".$i]);
$link[$i] = $write["wr_link".$i];
$write['wr_link'.$i] = get_text($write['wr_link'.$i]);
$link[$i] = $write['wr_link'.$i];
}
$trackback = $write[wr_trackback];
if (strstr($write[wr_option], "html1")) {
$html_checked = "checked";
$html_value = "html1";
} else if (strstr($write[wr_option], "html2")) {
$html_checked = "checked";
$html_value = "html2";
if (strstr($write[wr_option], 'html1')) {
$html_checked = 'checked';
$html_value = 'html1';
} else if (strstr($write[wr_option], 'html2')) {
$html_checked = 'checked';
$html_value = 'html2';
} else
$html_value = "";
$html_value = '';
if (strstr($write[wr_option], "secret"))
$secret_checked = "checked";
if (strstr($write[wr_option], 'secret'))
$secret_checked = 'checked';
$file = get_file($bo_table, $wr_id);
} else if ($w == "r") {
if (strstr($write[wr_option], "secret")) {
} else if ($w == 'r') {
if (strstr($write[wr_option], 'secret')) {
$is_secret = true;
$secret_checked = "checked";
$secret_checked = 'checked';
}
$password_required = "required";
for ($i=1; $i<=$g4[link_count]; $i++) {
$write["wr_link".$i] = get_text($write["wr_link".$i]);
$write['wr_link'.$i] = get_text($write['wr_link'.$i]);
}
}
$subject = preg_replace("/\"/", "&#034;", get_text(cut_str($write[wr_subject], 255), 0));
if ($w == "")
if ($w == '')
$content = $board[bo_insert_content];
else if ($w == "r") {
else if ($w == 'r') {
//if (!$write[wr_html]) {
if (!strstr($write[wr_option], "html")) {
$content = "\n\n\n>"
if (!strstr($write[wr_option], 'html')) {
$content = PHP_EOL.PHP_EOL.PHP_EOL.' &gt; '
//. "\n> $write[wr_datetime], \"$write[wr_name]\"님이 쓰신 글입니다. ↓"
. "\n>"
. "\n> " . preg_replace("/\n/", "\n> ", get_text($write[wr_content], 0))
. "\n>"
. "\n";
.PHP_EOL.' &gt; '
.PHP_EOL.' &gt; '.preg_replace("/\n/", "\n> ", get_text($write[wr_content], 0))
.PHP_EOL.' &gt; '
.PHP_EOL.' &gt; ';
}
} else
$content = get_text($write[wr_content], 0);
$upload_max_filesize = number_format($board[bo_upload_size]) . " 바이트";
$upload_max_filesize = number_format($board[bo_upload_size]) . ' 바이트';
$width = $board[bo_table_width];
if ($width <= 100)
@ -357,54 +357,54 @@ else
}
include_once($g4['path'].'/head.sub.php');
include_once("./board_head.php");
include_once('./board_head.php');
// 자동등록방지
//include_once ("./norobot.inc.php");
//include_once ('./norobot.inc.php');
//--------------------------------------------------------------------------
// 가변 파일
$file_script = "";
$file_script = '';
$file_length = -1;
// 수정의 경우 파일업로드 필드가 가변적으로 늘어나야 하고 삭제 표시도 해주어야 합니다.
if ($w == "u")
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' ");
$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(\"<input type='checkbox' name='bf_file_del[$i]' value='1'><a href='{$file[$i][href]}'>{$file[$i][source]}({$file[$i][size]})</a> 파일 삭제";
$file_script .= 'add_file("<input type="checkbox" name="bf_file_del['.$i.']" value="1"><a href="'.$file[$i][href].'">'.$file[$i][source].'('.$file[$i][size].')</a> 파일 삭제';
if ($is_file_content)
//$file_script .= "<br><input type='text' class=ed size=50 name='bf_content[$i]' value='{$row[bf_content]}' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
//$file_script .= '<br><input type="text" class="ed" size="50" name="bf_content['.$i.']" value="'.$row[bf_content].'" title="업로드 이미지 파일에 해당 되는 내용을 입력하세요.">';
// 첨부파일설명에서 ' 또는 " 입력되면 오류나는 부분 수정
$file_script .= "<br><input type='text' class=ed size=50 name='bf_content[$i]' value='".addslashes(get_text($row[bf_content]))."' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
$file_script .= "\");\n";
$file_script .= '<br><input type="text" class="ed" size="50" name="bf_content['.$i.']" value="'.addslashes(get_text($row[bf_content])).'" title="업로드 이미지 파일에 해당 되는 내용을 입력하세요.">';
$file_script .= '\");'.PHP_EOL;
}
else
$file_script .= "add_file('');\n";
$file_script .= 'add_file("");'.PHP_EOL;
}
$file_length = $file[count] - 1;
}
if ($file_length < 0)
{
$file_script .= "add_file('');\n";
$file_script .= 'add_file("");'.PHP_EOL;
$file_length = 0;
}
//--------------------------------------------------------------------------
include_once ("$board_skin_path/write.skin.php");
include_once ($board_skin_path.'/write.skin.php');
if (!$member[mb_id])
echo "<script src='$g4['path']/js/md5.js'></script>\n";
echo '<script src="'.$g4['path'].'/js/md5.js"></script>'.PHP_EOL;
// 필터
//echo "<script> var g4_cf_filter = '$config[cf_filter]'; </script>\n";
//echo "<script src='$g4['path']/js/filter.js'></script>\n";
//echo '<script> var g4_cf_filter = \''.$config[cf_filter].'\'; </script>'.PHP_EOL;
//echo '<script src="'.$g4['path'].'/js/filter.js"></script>'.PHP_EOL;
include_once("./board_tail.php");
include_once('./board_tail.php');
include_once($g4['path'].'/tail.sub.php');
@include_once ("$board_skin_path/write.tail.skin.php");
@include_once ($board_skin_path.'/write.tail.skin.php');
?>