게시판 글 이동이 안됩니다.ㅠ 정보
게시판 글 이동이 안됩니다.ㅠ본문
select wr_num, wr_notice from gb_write_case where wr_id in (27bo_table=case,27) group by wr_num, wr_notice order by wr_num desc, wr_notice
1064 : You have an error in your SQL syntax near '27) group by wr_num, wr_notice order by wr_num desc, wr_not' at line 2
라고 뜨는데..
http://univ.jungang.org/gnu/?doc=bbs/gnuboard.php&bo_table=case&page=1&wr_id=27
를 옮길때 생깁니다. (그러니깐.. id = 27이라서.. 위의 에러 문구에서 27로 대입되네요..)
아래의 내용은 gbmoveallupdate.php 파일 내용이구요.
3.43 버젼의 내용과 동일합니다.(AcroDiff 로 확인했음).
물론 gbmoveupdate.php도 마찬가지로 수정한 적이 없고요.
도대체 무엇이 에러인지..ㅠㅠㅠ
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "NONE");
// 3.36
// 게시판 관리자 이상 복사, 이동 가능
if (!('board' == $is_admin || 'group' == $is_admin || 'default' == $is_admin)) {
echo "
<script language='javascript'>
//alert('그룹관리자 이상 가능합니다.');
alert('게시판 관리자 이상 가능합니다.');
window.close();
</script>";
exit;
}
if (!($sw == "move" || $sw == "copy")) {
alert("sw 값이 제대로 넘어오지 않았습니다.");
}
// 원본 파일 디렉토리
$srcdir = "./data/file/$bo_table";
unset($tmp);
$sql = " select wr_num, wr_notice
from $write_table where wr_id in ($wr_id_list)
group by wr_num, wr_notice
order by wr_num desc, wr_notice ";
$result = sql_query($sql);
for ($i=0; $row=mysql_fetch_array($result); $i++) {
$tmp[$i][wr_num] = $row[wr_num];
$tmp[$i][wr_notice] = $row[wr_notice];
}
for ($m=0; $m<count($tmp); $m++)
{
// 임시저장된 배열을 넘김
$write = $tmp[$m];
//$sql = " select wr_num, wr_notice from $write_table where wr_id = '$wr_id[$m]' ";
//$write = sql_fetch($sql);
// 쿼리문을 임시저장하는 배열
unset($tmp_query);
// 삭제할 파일을 임시저장하는 배열
unset($tmp_file);
for ($i=0; $i<count($_POST[chk]); $i++)
{
$copy_bo_table = $_POST[chk][$i];
$copy_table = $cfg[write_table_prefix] . $copy_bo_table;
// 복사본 파일 디렉토리
$dstdir = "./data/file/$copy_bo_table";
// 복사되는 게시판의 게시물 번호를 얻는다
$num = get_next_num($copy_table, $write[wr_notice]);
$save_parent_id = 0;
$sql = " select * from $write_table
where wr_num = '$write[wr_num]'
and wr_notice = '$write[wr_notice]'
order by wr_parent_id, wr_comment ";
$result = sql_query($sql);
while ($row = mysql_fetch_array($result)) {
// 같은 분류가 있는지 검사, 없다면 기본 1 로 설정
$sql1 = " select count(*) from {$copy_table}_cat where ca_id = '$row[ca_id]' ";
$row1 = sql_fetch($sql1);
if ($row1[0] == 0) {
$ca_id = 1;
} else {
$ca_id = $row[ca_id];
}
$s_content = "";
if ($row[wr_comment] == 0) {
$s_content = " \n\n[이 게시물은 {$member[mb_name]}님에 의해 {$now} {$board[bo_subject]}(으)로 부터 ";
if ($sw == 'copy') {
$s_content .= "복사";
} else {
$s_content .= "이동";
}
$s_content .= "됨]";
}
$sql2= " insert into $copy_table
set wr_num = '$num',
wr_notice = '$row[wr_notice]',
ca_id = '$ca_id',
wr_reply = '$row[wr_reply]',
wr_comment = '$row[wr_comment]',
wr_commentcnt = '$row[wr_commentcnt]',
wr_html = '$row[wr_html]',
wr_secret = '$row[wr_secret]',
wr_recv_email = '$row[wr_recv_email]',
wr_subject = '".addslashes($row[wr_subject])."',
wr_content = '".addslashes($row[wr_content])."$s_content',
wr_link1 = '$row[wr_link1]',
wr_link2 = '$row[wr_link2]',
wr_link1_hit = '$row[wr_link1_hit]',
wr_link2_hit = '$row[wr_link2_hit]',
wr_file1 = '$row[wr_file1]',
wr_file2 = '$row[wr_file2]',
wr_file1_source = '$row[wr_file1_source]',
wr_file2_source = '$row[wr_file2_source]',
wr_file1_download = '$row[wr_file1_download]',
wr_file2_download = '$row[wr_file2_download]',
wr_hit = '$row[wr_hit]',
mb_id = '$row[mb_id]',
wr_passwd = '$row[wr_passwd]',
wr_name = '".addslashes($row[wr_name])."',
wr_email = '$row[wr_email]',
wr_homepage = '$row[wr_homepage]',
wr_datetime = '$row[wr_datetime]',
wr_ip = '$row[wr_ip]',
wr_user_agent = '$row[wr_user_agent]',
wr_update_datetime = '$row[wr_update_datetime]',
wr_update_ip = '$row[wr_update_ip]',
wr_update_user_agent = '$row[wr_update_user_agent]',
wr_1 = '$row[wr_1]',
wr_2 = '$row[wr_2]',
wr_3 = '$row[wr_3]',
wr_4 = '$row[wr_4]',
wr_5 = '$row[wr_5]' ";
sql_query($sql2);
$id = mysql_insert_id();
// 원글 이라면
if ($row[wr_comment] == 0) {
$save_parent_id = $id;
// 복사되는 게시판의 게시글 1 증가
// sql_query("update $cfg[table_board] set bo_total_count = bo_total_count + 1 where bo_table = '$copy_bo_table'");
}
$sql3 = " update $copy_table
set wr_parent_id = '$save_parent_id'
where wr_id = '$id' ";
sql_query($sql3);
// 파일 복사
@copy("$srcdir/$row[wr_file1]", "$dstdir/$row[wr_file1]");
@copy("$srcdir/$row[wr_file2]", "$dstdir/$row[wr_file2]");
// 이동일 경우 원본 게시물 삭제
if ($sw == "move") {
$tmp_query[] = " delete from $write_table where wr_id = '$row[wr_id]' ";
//sql_query(" delete from $write_table where wr_id = '$row[wr_id]' ");
// 원본 게시판의 게시글 1 감소
//if ($row[wr_comment] == 0) {
//$tmp_query[] = "update $cfg[table_board] set bo_total_count = bo_total_count - 1 where bo_table = '$bo_table'";
//sql_query("update $cfg[table_board] set bo_total_count = bo_total_count - 1 where bo_table = '$bo_table'");
//}
// 파일 삭제
$tmp_file[] = $row[wr_file1];
$tmp_file[] = $row[wr_file2];
//@unlink("$srcdir/$row[wr_file1]");
//@unlink("$srcdir/$row[wr_file2]");
}
} // end while $row
mysql_free_result($result);
} // end for $i
// 임시저장한 쿼리 실행
if ($tmp_query) {
foreach ($tmp_query as $key => $value) {
sql_query($value);
}
}
// 임시저장한 파일 삭제
if ($tmp_file) {
foreach ($tmp_file as $key => $value) {
if ($value) {
@unlink("$srcdir/$value");
}
}
}
} // end for $m
// 전체 게시물 건수를 업데이트
$sql = " select count(*) from $cfg[write_table_prefix]$bo_table where wr_comment = 0 ";
$row = sql_fetch($sql);
$sql = " update $cfg[table_board] set bo_total_count = '$row[0]' where bo_table = '$bo_table' ";
sql_query($sql);
for ($i=0; $i<count($_POST[chk]); $i++) {
$copy_bo_table = $_POST[chk][$i];
$sql = " select count(*) from $cfg[write_table_prefix]$copy_bo_table where wr_comment = 0 ";
$row = sql_fetch($sql);
$sql = " update $cfg[table_board] set bo_total_count = '$row[0]' where bo_table = '$copy_bo_table' ";
sql_query($sql);
}
$msg = "해당 게시물을 선택한 게시판으로 ".$act." 하였습니다.";
$opener_href = "./?doc=bbs/gnuboard.php&$qstr&page=$page";
echo "
<script language='javascript'>
alert(\"$msg\");
opener.document.location.href = '$opener_href';
window.close();
</script>";
?>
1064 : You have an error in your SQL syntax near '27) group by wr_num, wr_notice order by wr_num desc, wr_not' at line 2
라고 뜨는데..
http://univ.jungang.org/gnu/?doc=bbs/gnuboard.php&bo_table=case&page=1&wr_id=27
를 옮길때 생깁니다. (그러니깐.. id = 27이라서.. 위의 에러 문구에서 27로 대입되네요..)
아래의 내용은 gbmoveallupdate.php 파일 내용이구요.
3.43 버젼의 내용과 동일합니다.(AcroDiff 로 확인했음).
물론 gbmoveupdate.php도 마찬가지로 수정한 적이 없고요.
도대체 무엇이 에러인지..ㅠㅠㅠ
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "NONE");
// 3.36
// 게시판 관리자 이상 복사, 이동 가능
if (!('board' == $is_admin || 'group' == $is_admin || 'default' == $is_admin)) {
echo "
<script language='javascript'>
//alert('그룹관리자 이상 가능합니다.');
alert('게시판 관리자 이상 가능합니다.');
window.close();
</script>";
exit;
}
if (!($sw == "move" || $sw == "copy")) {
alert("sw 값이 제대로 넘어오지 않았습니다.");
}
// 원본 파일 디렉토리
$srcdir = "./data/file/$bo_table";
unset($tmp);
$sql = " select wr_num, wr_notice
from $write_table where wr_id in ($wr_id_list)
group by wr_num, wr_notice
order by wr_num desc, wr_notice ";
$result = sql_query($sql);
for ($i=0; $row=mysql_fetch_array($result); $i++) {
$tmp[$i][wr_num] = $row[wr_num];
$tmp[$i][wr_notice] = $row[wr_notice];
}
for ($m=0; $m<count($tmp); $m++)
{
// 임시저장된 배열을 넘김
$write = $tmp[$m];
//$sql = " select wr_num, wr_notice from $write_table where wr_id = '$wr_id[$m]' ";
//$write = sql_fetch($sql);
// 쿼리문을 임시저장하는 배열
unset($tmp_query);
// 삭제할 파일을 임시저장하는 배열
unset($tmp_file);
for ($i=0; $i<count($_POST[chk]); $i++)
{
$copy_bo_table = $_POST[chk][$i];
$copy_table = $cfg[write_table_prefix] . $copy_bo_table;
// 복사본 파일 디렉토리
$dstdir = "./data/file/$copy_bo_table";
// 복사되는 게시판의 게시물 번호를 얻는다
$num = get_next_num($copy_table, $write[wr_notice]);
$save_parent_id = 0;
$sql = " select * from $write_table
where wr_num = '$write[wr_num]'
and wr_notice = '$write[wr_notice]'
order by wr_parent_id, wr_comment ";
$result = sql_query($sql);
while ($row = mysql_fetch_array($result)) {
// 같은 분류가 있는지 검사, 없다면 기본 1 로 설정
$sql1 = " select count(*) from {$copy_table}_cat where ca_id = '$row[ca_id]' ";
$row1 = sql_fetch($sql1);
if ($row1[0] == 0) {
$ca_id = 1;
} else {
$ca_id = $row[ca_id];
}
$s_content = "";
if ($row[wr_comment] == 0) {
$s_content = " \n\n[이 게시물은 {$member[mb_name]}님에 의해 {$now} {$board[bo_subject]}(으)로 부터 ";
if ($sw == 'copy') {
$s_content .= "복사";
} else {
$s_content .= "이동";
}
$s_content .= "됨]";
}
$sql2= " insert into $copy_table
set wr_num = '$num',
wr_notice = '$row[wr_notice]',
ca_id = '$ca_id',
wr_reply = '$row[wr_reply]',
wr_comment = '$row[wr_comment]',
wr_commentcnt = '$row[wr_commentcnt]',
wr_html = '$row[wr_html]',
wr_secret = '$row[wr_secret]',
wr_recv_email = '$row[wr_recv_email]',
wr_subject = '".addslashes($row[wr_subject])."',
wr_content = '".addslashes($row[wr_content])."$s_content',
wr_link1 = '$row[wr_link1]',
wr_link2 = '$row[wr_link2]',
wr_link1_hit = '$row[wr_link1_hit]',
wr_link2_hit = '$row[wr_link2_hit]',
wr_file1 = '$row[wr_file1]',
wr_file2 = '$row[wr_file2]',
wr_file1_source = '$row[wr_file1_source]',
wr_file2_source = '$row[wr_file2_source]',
wr_file1_download = '$row[wr_file1_download]',
wr_file2_download = '$row[wr_file2_download]',
wr_hit = '$row[wr_hit]',
mb_id = '$row[mb_id]',
wr_passwd = '$row[wr_passwd]',
wr_name = '".addslashes($row[wr_name])."',
wr_email = '$row[wr_email]',
wr_homepage = '$row[wr_homepage]',
wr_datetime = '$row[wr_datetime]',
wr_ip = '$row[wr_ip]',
wr_user_agent = '$row[wr_user_agent]',
wr_update_datetime = '$row[wr_update_datetime]',
wr_update_ip = '$row[wr_update_ip]',
wr_update_user_agent = '$row[wr_update_user_agent]',
wr_1 = '$row[wr_1]',
wr_2 = '$row[wr_2]',
wr_3 = '$row[wr_3]',
wr_4 = '$row[wr_4]',
wr_5 = '$row[wr_5]' ";
sql_query($sql2);
$id = mysql_insert_id();
// 원글 이라면
if ($row[wr_comment] == 0) {
$save_parent_id = $id;
// 복사되는 게시판의 게시글 1 증가
// sql_query("update $cfg[table_board] set bo_total_count = bo_total_count + 1 where bo_table = '$copy_bo_table'");
}
$sql3 = " update $copy_table
set wr_parent_id = '$save_parent_id'
where wr_id = '$id' ";
sql_query($sql3);
// 파일 복사
@copy("$srcdir/$row[wr_file1]", "$dstdir/$row[wr_file1]");
@copy("$srcdir/$row[wr_file2]", "$dstdir/$row[wr_file2]");
// 이동일 경우 원본 게시물 삭제
if ($sw == "move") {
$tmp_query[] = " delete from $write_table where wr_id = '$row[wr_id]' ";
//sql_query(" delete from $write_table where wr_id = '$row[wr_id]' ");
// 원본 게시판의 게시글 1 감소
//if ($row[wr_comment] == 0) {
//$tmp_query[] = "update $cfg[table_board] set bo_total_count = bo_total_count - 1 where bo_table = '$bo_table'";
//sql_query("update $cfg[table_board] set bo_total_count = bo_total_count - 1 where bo_table = '$bo_table'");
//}
// 파일 삭제
$tmp_file[] = $row[wr_file1];
$tmp_file[] = $row[wr_file2];
//@unlink("$srcdir/$row[wr_file1]");
//@unlink("$srcdir/$row[wr_file2]");
}
} // end while $row
mysql_free_result($result);
} // end for $i
// 임시저장한 쿼리 실행
if ($tmp_query) {
foreach ($tmp_query as $key => $value) {
sql_query($value);
}
}
// 임시저장한 파일 삭제
if ($tmp_file) {
foreach ($tmp_file as $key => $value) {
if ($value) {
@unlink("$srcdir/$value");
}
}
}
} // end for $m
// 전체 게시물 건수를 업데이트
$sql = " select count(*) from $cfg[write_table_prefix]$bo_table where wr_comment = 0 ";
$row = sql_fetch($sql);
$sql = " update $cfg[table_board] set bo_total_count = '$row[0]' where bo_table = '$bo_table' ";
sql_query($sql);
for ($i=0; $i<count($_POST[chk]); $i++) {
$copy_bo_table = $_POST[chk][$i];
$sql = " select count(*) from $cfg[write_table_prefix]$copy_bo_table where wr_comment = 0 ";
$row = sql_fetch($sql);
$sql = " update $cfg[table_board] set bo_total_count = '$row[0]' where bo_table = '$copy_bo_table' ";
sql_query($sql);
}
$msg = "해당 게시물을 선택한 게시판으로 ".$act." 하였습니다.";
$opener_href = "./?doc=bbs/gnuboard.php&$qstr&page=$page";
echo "
<script language='javascript'>
alert(\"$msg\");
opener.document.location.href = '$opener_href';
window.close();
</script>";
?>
댓글 전체