변수 전달 질문 드립니다.
글을 등록할 때 다른 php 페이지로 변수를 넘겨주기 위해서 중간에 include 문과 변수를 넣어주었는데요.
정상적으로 동작을 하지 않네요. 아주 안넘어가는건 아니고 alert 문으로 찍어보면 정상적으로 값은 나옵니다.
근데 정상적이라면 write_update.php 파일 실행 이후 등록된 글 페이지로 이동되면 글등록이 완료된건데,
문제는 등록된 글페이지로 이동이 되지 않고 등록도 안된다는겁니다.
write_update.php 파일을 수정했구요. 수정한 부분에 주석 표시하겠습니다.
초보라서 도움 부탁드립니다. ㅠㅠ
</p><p><?php</p><p>include_once('./_common.php');</p><p>include_once(G5_CAPTCHA_PATH.'/captcha.lib.php');</p><p> </p><p>/* 추가한 부분</p><p>$bo_table = $_REQUEST['bo_table'];</p><p>if($bo_table == 'ta_notice') {</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>include_once('./engine.php');</p><p>}</p><p>*/</p><p> </p><p>$g5['title'] = '게시글 저장';</p><p> </p><p>$msg = array();</p><p> </p><p>$wr_subject = '';</p><p>if (isset($_POST['wr_subject'])) {</p><p> $wr_subject = substr(trim($_POST['wr_subject']),0,255);</p><p>}</p><p>if ($wr_subject == '') {</p><p> $msg[] = '<strong>제목</strong>을 입력하세요.';</p><p>}</p><p> </p><p>$wr_content = '';</p><p>if (isset($_POST['wr_content'])) {</p><p> $wr_content = substr(trim($_POST['wr_content']),0,65536);</p><p>}</p><p>if ($wr_content == '') {</p><p> $msg[] = '<strong>내용</strong>을 입력하세요.';</p><p>}</p><p> </p><p>/* 추가한 부분</p><p>$message = $wr_subject;</p><p>//alert($message);</p><p>*/</p><p> </p><p>$wr_link1 = '';</p><p>if (isset($_POST['wr_link1'])) {</p><p> $wr_link1 = substr($_POST['wr_link1'],0,1000);</p><p>}</p><p> </p><p>$wr_link2 = '';</p><p>if (isset($_POST['wr_link2'])) {</p><p> $wr_link2 = substr($_POST['wr_link2'],0,1000);</p><p>}</p><p> </p><p>$msg = implode('
', $msg);</p><p>if ($msg) {</p><p> alert($msg);</p><p>}</p><p> </p><p>// 090710</p><p>if (substr_count($wr_content, '&#') > 50) {</p><p> alert('내용에 올바르지 않은 코드가 다수 포함되어 있습니다.');</p><p> exit;</p><p>}</p><p> </p><p>$upload_max_filesize = ini_get('upload_max_filesize');</p><p> </p><p>if (empty($_POST)) {</p><p> alert("파일 또는 글내용의 크기가 서버에서 설정한 값을 넘어 오류가 발생하였습니다.\\npost_max_size=".ini_get('post_max_size')." , upload_max_filesize=".$upload_max_filesize."\\n게시판관리자 또는 서버관리자에게 문의 바랍니다.");</p><p>}</p><p> </p><p>$w = $_POST['w'];</p><p>$wr_link1 = escape_trim(strip_tags($_POST['wr_link1']));</p><p>$wr_link2 = escape_trim(strip_tags($_POST['wr_link2']));</p><p> </p><p>$notice_array = explode(",", $board['bo_notice']);</p><p> </p><p>if ($w == 'u' || $w == 'r') {</p><p> $wr = get_write($write_table, $wr_id);</p><p> if (!$wr['wr_id']) {</p><p> alert("글이 존재하지 않습니다.\\n글이 삭제되었거나 이동하였을 수 있습니다.");</p><p> }</p><p>}</p><p> </p><p>// 외부에서 글을 등록할 수 있는 버그가 존재하므로 비밀글은 사용일 경우에만 가능해야 함</p><p>if (!$is_admin && !$board['bo_use_secret'] && $secret) {</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>alert('비밀글 미사용 게시판 이므로 비밀글로 등록할 수 없습니다.');</p><p>}</p><p> </p><p>// 외부에서 글을 등록할 수 있는 버그가 존재하므로 비밀글 무조건 사용일때는 관리자를 제외(공지)하고 무조건 비밀글로 등록</p><p>if (!$is_admin && $board['bo_use_secret'] == 2) {</p><p> $secret = 'secret';</p><p>}</p><p> </p><p>$html = '';</p><p>if (isset($_POST['html']) && $_POST['html']) {</p><p> $html = $_POST['html'];</p><p>}</p><p> </p><p>$mail = '';</p><p>if (isset($_POST['mail']) && $_POST['mail']) {</p><p> $mail = $_POST['mail'];</p><p>}</p><p> </p><p>$notice = '';</p><p>if (isset($_POST['notice']) && $_POST['notice']) {</p><p> $notice = $_POST['notice'];</p><p>}</p><p> </p><p>for ($i=1; $i<=10; $i++) {</p><p> $var = "wr_$i";</p><p> $$var = "";</p><p> if (isset($_POST['wr_'.$i]) && $_POST['wr_'.$i]) {</p><p> $$var = escape_trim($_POST['wr_'.$i]);</p><p> }</p><p>}</p><p> </p><p>@include_once($board_skin_path.'/write_update.head.skin.php');</p><p> </p><p>if ($w == '' || $w == 'u') {</p><p> </p><p> // 김선용 1.00 : 글쓰기 권한과 수정은 별도로 처리되어야 함</p><p> if($w =='u' && $member['mb_id'] && $wr['mb_id'] == $member['mb_id']) {</p><p> ;</p><p> } else if ($member['mb_level'] < $board['bo_write_level']) {</p><p> alert('글을 쓸 권한이 없습니다.');</p><p> }</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>// 외부에서 글을 등록할 수 있는 버그가 존재하므로 공지는 관리자만 등록이 가능해야 함</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>if (!$is_admin && $notice) {</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>alert('관리자만 공지할 수 있습니다.');</p><p> }</p><p> </p><p>} else if ($w == 'r') {</p><p> </p><p> if (in_array((int)$wr_id, $notice_array)) {</p><p> alert('공지에는 답변 할 수 없습니다.');</p><p> }</p><p> </p><p> if ($member['mb_level'] < $board['bo_reply_level']) {</p><p> alert('글을 답변할 권한이 없습니다.');</p><p> }</p><p> </p><p> // 게시글 배열 참조</p><p> $reply_array = &$wr;</p><p> </p><p> // 최대 답변은 테이블에 잡아놓은 wr_reply 사이즈만큼만 가능합니다.</p><p> if (strlen($reply_array['wr_reply']) == 10) {</p><p> alert("더 이상 답변하실 수 없습니다.\\n답변은 10단계 까지만 가능합니다.");</p><p> }</p><p> </p><p> $reply_len = strlen($reply_array['wr_reply']) + 1;</p><p> if ($board['bo_reply_order']) {</p><p> $begin_reply_char = 'A';</p><p> $end_reply_char = 'Z';</p><p> $reply_number = +1;</p><p> $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) <> '' ";</p><p> } else {</p><p> $begin_reply_char = 'Z';</p><p> $end_reply_char = 'A';</p><p> $reply_number = -1;</p><p> $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) <> '' ";</p><p> }</p><p> if ($reply_array['wr_reply']) $sql .= " and wr_reply like '{$reply_array['wr_reply']}%' ";</p><p> $row = sql_fetch($sql);</p><p> </p><p> if (!$row['reply']) {</p><p> $reply_char = $begin_reply_char;</p><p> } else if ($row['reply'] == $end_reply_char) { // A~Z은 26 입니다.</p><p> alert("더 이상 답변하실 수 없습니다.\\n답변은 26개 까지만 가능합니다.");</p><p> } else {</p><p> $reply_char = chr(ord($row['reply']) + $reply_number);</p><p> }</p><p> </p><p> $reply = $reply_array['wr_reply'] . $reply_char;</p><p> </p><p>} else {</p><p> alert('w 값이 제대로 넘어오지 않았습니다.');</p><p>}</p><p> </p><p>if ($is_guest && !chk_captcha()) {</p><p> alert('자동등록방지 숫자가 틀렸습니다.');</p><p>}</p><p> </p><p>if ($w == '' || $w == 'r') {</p><p> if (isset($_SESSION['ss_datetime'])) {</p><p> if ($_SESSION['ss_datetime'] >= (G5_SERVER_TIME - $config['cf_delay_sec']) && !$is_admin)</p><p> alert('너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.');</p><p> }</p><p> </p><p> set_session("ss_datetime", G5_SERVER_TIME);</p><p>}</p><p> </p><p>if (!isset($_POST['wr_subject']) || !trim($_POST['wr_subject']))</p><p> alert('제목을 입력하여 주십시오.');</p><p> </p><p> </p><p>// 디렉토리가 없다면 생성합니다. (퍼미션도 변경하구요.)</p><p>@mkdir(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);</p><p>@chmod(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);</p><p> </p><p>$chars_array = array_merge(range(0,9), range('a','z'), range('A','Z'));</p><p> </p><p>// 가변 파일 업로드</p><p>$file_upload_msg = '';</p><p>$upload = array();</p><p>for ($i=0; $i<count($_FILES['bf_file']['name']); $i++) {</p><p> $upload[$i]['file'] = '';</p><p> $upload[$i]['source'] = '';</p><p> $upload[$i]['filesize'] = 0;</p><p> $upload[$i]['image'] = array();</p><p> $upload[$i]['image'][0] = '';</p><p> $upload[$i]['image'][1] = '';</p><p> $upload[$i]['image'][2] = '';</p><p> </p><p> // 삭제에 체크가 되어있다면 파일을 삭제합니다.</p><p> if (isset($_POST['bf_file_del'][$i]) && $_POST['bf_file_del'][$i]) {</p><p> $upload[$i]['del_check'] = true;</p><p> </p><p> $row = sql_fetch(" select bf_file from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' ");</p><p> @unlink(G5_DATA_PATH.'/file/'.$bo_table.'/'.$row['bf_file']);</p><p> // 썸네일삭제</p><p> if(preg_match("/\.({$config['cf_image_extension']})$/i", $row['bf_file'])) {</p><p> delete_board_thumbnail($bo_table, $row['bf_file']);</p><p> }</p><p> }</p><p> else</p><p> $upload[$i]['del_check'] = false;</p><p> </p><p> $tmp_file = $_FILES['bf_file']['tmp_name'][$i];</p><p> $filesize = $_FILES['bf_file']['size'][$i];</p><p> $filename = $_FILES['bf_file']['name'][$i];</p><p> $filename = preg_replace('/(<|>|=)/', '', $filename);</p><p> </p><p> // 서버에 설정된 값보다 큰파일을 업로드 한다면</p><p> if ($filename) {</p><p> if ($_FILES['bf_file']['error'][$i] == 1) {</p><p> $file_upload_msg .= '\"'.$filename.'\" 파일의 용량이 서버에 설정('.$upload_max_filesize.')된 값보다 크므로 업로드 할 수 없습니다.\\n';</p><p> continue;</p><p> }</p><p> else if ($_FILES['bf_file']['error'][$i] != 0) {</p><p> $file_upload_msg .= '\"'.$filename.'\" 파일이 정상적으로 업로드 되지 않았습니다.\\n';</p><p> continue;</p><p> }</p><p> }</p><p> </p><p> if (is_uploaded_file($tmp_file)) {</p><p> // 관리자가 아니면서 설정한 업로드 사이즈보다 크다면 건너뜀</p><p> if (!$is_admin && $filesize > $board['bo_upload_size']) {</p><p> $file_upload_msg .= '\"'.$filename.'\" 파일의 용량('.number_format($filesize).' 바이트)이 게시판에 설정('.number_format($board['bo_upload_size']).' 바이트)된 값보다 크므로 업로드 하지 않습니다.\\n';</p><p> continue;</p><p> }</p><p> </p><p> //=================================================================\</p><p> // 090714</p><p> // 이미지나 플래시 파일에 악성코드를 심어 업로드 하는 경우를 방지</p><p> // 에러메세지는 출력하지 않는다.</p><p> //-----------------------------------------------------------------</p><p> $timg = @getimagesize($tmp_file);</p><p> // image type</p><p> if ( preg_match("/\.({$config['cf_image_extension']})$/i", $filename) ||</p><p> preg_match("/\.({$config['cf_flash_extension']})$/i", $filename) ) {</p><p> if ($timg['2'] < 1 || $timg['2'] > 16)</p><p> continue;</p><p> }</p><p> //=================================================================</p><p> </p><p> $upload[$i]['image'] = $timg;</p><p> </p><p> // 4.00.11 - 글답변에서 파일 업로드시 원글의 파일이 삭제되는 오류를 수정</p><p> if ($w == 'u') {</p><p> // 존재하는 파일이 있다면 삭제합니다.</p><p> $row = sql_fetch(" select bf_file from {$g5['board_file_table']} where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$i' ");</p><p> @unlink(G5_DATA_PATH.'/file/'.$bo_table.'/'.$row['bf_file']);</p><p> // 이미지파일이면 썸네일삭제</p><p> if(preg_match("/\.({$config['cf_image_extension']})$/i", $row['bf_file'])) {</p><p> delete_board_thumbnail($bo_table, $row['bf_file']);</p><p> }</p><p> }</p><p> </p><p> // 프로그램 원래 파일명</p><p> $upload[$i]['source'] = $filename;</p><p> $upload[$i]['filesize'] = $filesize;</p><p> </p><p> // 아래의 문자열이 들어간 파일은 -x 를 붙여서 웹경로를 알더라도 실행을 하지 못하도록 함</p><p> $filename = preg_replace("/\.(php|phtm|htm|cgi|pl|exe|jsp|asp|inc)/i", "$0-x", $filename);</p><p> </p><p> shuffle($chars_array);</p><p> $shuffle = implode('', $chars_array);</p><p> </p><p> // 첨부파일 첨부시 첨부파일명에 공백이 포함되어 있으면 일부 PC에서 보이지 않거나 다운로드 되지 않는 현상이 있습니다. (길상여의 님 090925)</p><p> $upload[$i]['file'] = abs(ip2long($_SERVER['REMOTE_ADDR'])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode(str_replace(' ', '_', $filename)));</p><p> </p><p> $dest_file = G5_DATA_PATH.'/file/'.$bo_table.'/'.$upload[$i]['file'];</p><p> </p><p> // 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.</p><p> $error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);</p><p> </p><p> // 올라간 파일의 퍼미션을 변경합니다.</p><p> chmod($dest_file, G5_FILE_PERMISSION);</p><p> }</p><p>}</p><p> </p><p>if ($w == '' || $w == 'r') {</p><p> </p><p> if ($member['mb_id']) {</p><p> $mb_id = $member['mb_id'];</p><p> $wr_name = $board['bo_use_name'] ? $member['mb_name'] : $member['mb_nick'];</p><p> $wr_password = $member['mb_password'];</p><p> $wr_email = $member['mb_email'];</p><p> $wr_homepage = $member['mb_homepage'];</p><p> } else {</p><p> $mb_id = '';</p><p> // 비회원의 경우 이름이 누락되는 경우가 있음</p><p> $wr_name = escape_trim($_POST['wr_name']);</p><p> if (!$wr_name)</p><p> alert('이름은 필히 입력하셔야 합니다.');</p><p> $wr_password = sql_password($wr_password);</p><p> }</p><p> </p><p> if ($w == 'r') {</p><p> // 답변의 원글이 비밀글이라면 비밀번호는 원글과 동일하게 넣는다.</p><p> if ($secret)</p><p> $wr_password = $wr['wr_password'];</p><p> </p><p> $wr_id = $wr_id . $reply;</p><p> $wr_num = $write['wr_num'];</p><p> $wr_reply = $reply;</p><p> } else {</p><p> $wr_num = get_next_num($write_table);</p><p> $wr_reply = '';</p><p> }</p><p> </p><p> $sql = " insert into $write_table</p><p> set wr_num = '$wr_num',</p><p> wr_reply = '$wr_reply',</p><p> wr_comment = 0,</p><p> ca_name = '$ca_name',</p><p> wr_option = '$html,$secret,$mail',</p><p> wr_subject = '$wr_subject',</p><p> wr_content = '$wr_content',</p><p> wr_link1 = '$wr_link1',</p><p> wr_link2 = '$wr_link2',</p><p> wr_link1_hit = 0,</p><p> wr_link2_hit = 0,</p><p> wr_hit = 0,</p><p> wr_good = 0,</p><p> wr_nogood = 0,</p><p> mb_id = '{$member['mb_id']}',</p><p> wr_password = '$wr_password',</p><p> wr_name = '$wr_name',</p><p> wr_email = '$wr_email',</p><p> wr_homepage = '$wr_homepage',</p><p> wr_datetime = '".G5_TIME_YMDHIS."',</p><p> wr_last = '".G5_TIME_YMDHIS."',</p><p> wr_ip = '{$_SERVER['REMOTE_ADDR']}',</p><p> wr_1 = '$wr_1',</p><p> wr_2 = '$wr_2',</p><p> wr_3 = '$wr_3',</p><p> wr_4 = '$wr_4',</p><p> wr_5 = '$wr_5',</p><p> wr_6 = '$wr_6',</p><p> wr_7 = '$wr_7',</p><p> wr_8 = '$wr_8',</p><p> wr_9 = '$wr_9',</p><p> wr_10 = '$wr_10' ";</p><p> sql_query($sql);</p><p> </p><p> $wr_id = mysql_insert_id();</p><p> </p><p> // 부모 아이디에 UPDATE</p><p> sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");</p><p> </p><p> // 새글 INSERT</p><p> sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '{$member['mb_id']}' ) ");</p><p> </p><p> // 게시글 1 증가</p><p> sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");</p><p> </p><p> // 쓰기 포인트 부여</p><p> if ($w == '') {</p><p> if ($notice) {</p><p> $bo_notice = $wr_id.",".$board['bo_notice'];</p><p> sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");</p><p> }</p><p> </p><p> insert_point($member['mb_id'], $board['bo_write_point'], "{$board['bo_subject']} {$wr_id} 글쓰기", $bo_table, $wr_id, '쓰기');</p><p> } else {</p><p> // 답변은 코멘트 포인트를 부여함</p><p> // 답변 포인트가 많은 경우 코멘트 대신 답변을 하는 경우가 많음</p><p> insert_point($member['mb_id'], $board['bo_comment_point'], "{$board['bo_subject']} {$wr_id} 글답변", $bo_table, $wr_id, '쓰기');</p><p> }</p><p>} else if ($w == 'u') {</p><p> if (get_session('ss_bo_table') != $_POST['bo_table'] || get_session('ss_wr_id') != $_POST['wr_id']) {</p><p> alert('올바른 방법으로 수정하여 주십시오.');</p><p> }</p><p> </p><p> $return_url = './board.php?bo_table='.$bo_table.'&wr_id='.$wr_id;</p><p> </p><p> if ($is_admin == 'super') // 최고관리자 통과</p><p> ;</p><p> else if ($is_admin == 'group') { // 그룹관리자</p><p> $mb = get_member($write['mb_id']);</p><p> if ($member['mb_id'] != $group['gr_admin']) // 자신이 관리하는 그룹인가?</p><p> alert('자신이 관리하는 그룹의 게시판이 아니므로 수정할 수 없습니다.', $return_url);</p><p> else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과</p><p> alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.', $return_url);</p><p> } else if ($is_admin == 'board') { // 게시판관리자이면</p><p> $mb = get_member($write['mb_id']);</p><p> if ($member['mb_id'] != $board['bo_admin']) // 자신이 관리하는 게시판인가?</p><p> alert('자신이 관리하는 게시판이 아니므로 수정할 수 없습니다.', $return_url);</p><p> else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과</p><p> alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.', $return_url);</p><p> } else if ($member['mb_id']) {</p><p> if ($member['mb_id'] != $write['mb_id'])</p><p> alert('자신의 글이 아니므로 수정할 수 없습니다.', $return_url);</p><p> } else {</p><p> if ($write['mb_id'])</p><p> alert('로그인 후 수정하세요.', './login.php?url='.urlencode($return_url));</p><p> }</p><p> </p><p> if ($member['mb_id']) {</p><p> // 자신의 글이라면</p><p> if ($member['mb_id'] == $wr['mb_id']) {</p><p> $mb_id = $member['mb_id'];</p><p> $wr_name = $board['bo_use_name'] ? $member['mb_name'] : $member['mb_nick'];</p><p> $wr_email = $member['mb_email'];</p><p> $wr_homepage = $member['mb_homepage'];</p><p> } else {</p><p> $mb_id = $wr['mb_id'];</p><p> $wr_name = $wr['wr_name'];</p><p> $wr_email = $wr['wr_email'];</p><p> $wr_homepage = $wr['wr_homepage'];</p><p> }</p><p> } else {</p><p> $mb_id = "";</p><p> // 비회원의 경우 이름이 누락되는 경우가 있음</p><p> //if (!trim($wr_name)) alert("이름은 필히 입력하셔야 합니다.");</p><p> }</p><p> </p><p> $sql_password = $wr_password ? " , wr_password = '".sql_password($wr_password)."' " : "";</p><p> </p><p> $sql_ip = '';</p><p> if (!$is_admin)</p><p> $sql_ip = " , wr_ip = '{$_SERVER['REMOTE_ADDR']}' ";</p><p> </p><p> $sql = " update {$write_table}</p><p> set ca_name = '{$ca_name}',</p><p> wr_option = '{$html},{$secret},{$mail}',</p><p> wr_subject = '{$wr_subject}',</p><p> wr_content = '{$wr_content}',</p><p> wr_link1 = '{$wr_link1}',</p><p> wr_link2 = '{$wr_link2}',</p><p> mb_id = '{$mb_id}',</p><p> wr_name = '{$wr_name}',</p><p> wr_email = '{$wr_email}',</p><p> wr_homepage = '{$wr_homepage}',</p><p> wr_1 = '{$wr_1}',</p><p> wr_2 = '{$wr_2}',</p><p> wr_3 = '{$wr_3}',</p><p> wr_4 = '{$wr_4}',</p><p> wr_5 = '{$wr_5}',</p><p> wr_6 = '{$wr_6}',</p><p> wr_7 = '{$wr_7}',</p><p> wr_8 = '{$wr_8}',</p><p> wr_9 = '{$wr_9}',</p><p> wr_10= '{$wr_10}'</p><p> {$sql_ip}</p><p> {$sql_password}</p><p> where wr_id = '{$wr['wr_id']}' ";</p><p> sql_query($sql);</p><p> </p><p> // 분류가 수정되는 경우 해당되는 코멘트의 분류명도 모두 수정함</p><p> // 코멘트의 분류를 수정하지 않으면 검색이 제대로 되지 않음</p><p> $sql = " update {$write_table} set ca_name = '{$ca_name}' where wr_parent = '{$wr['wr_id']}' ";</p><p> sql_query($sql);</p><p> </p><p> /*</p><p> if ($notice) {</p><p> //if (!preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board['bo_notice']))</p><p> if (!in_array((int)$wr_id, $notice_array)) {</p><p> $bo_notice = $wr_id . ',' . $board['bo_notice'];</p><p> sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");</p><p> }</p><p> } else {</p><p> $bo_notice = '';</p><p> for ($i=0; $i<count($notice_array); $i++)</p><p> if ((int)$wr_id != (int)$notice_array[$i])</p><p> $bo_notice .= $notice_array[$i] . ',';</p><p> $bo_notice = trim($bo_notice);</p><p> //$bo_notice = preg_replace("/^".$wr_id."[\n]?$/m", "", $board['bo_notice']);</p><p> sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");</p><p> }</p><p> */</p><p> </p><p> $bo_notice = board_notice($board['bo_notice'], $wr_id, $notice);</p><p> sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");</p><p>}</p><p> </p><p>// syndication ping</p><p>include G5_SYNDI_PATH.'/include/include.bbs.write_update.php';</p><p> </p><p>//------------------------------------------------------------------------------</p><p>// 가변 파일 업로드</p><p>// 나중에 테이블에 저장하는 이유는 $wr_id 값을 저장해야 하기 때문입니다.</p><p>for ($i=0; $i<count($upload); $i++)</p><p>{</p><p> if (!get_magic_quotes_gpc()) {</p><p> $upload[$i]['source'] = addslashes($upload[$i]['source']);</p><p> }</p><p> </p><p> $row = sql_fetch(" select count(*) as cnt from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' ");</p><p> if ($row['cnt'])</p><p> {</p><p> // 삭제에 체크가 있거나 파일이 있다면 업데이트를 합니다.</p><p> // 그렇지 않다면 내용만 업데이트 합니다.</p><p> if ($upload[$i]['del_check'] || $upload[$i]['file'])</p><p> {</p><p> $sql = " update {$g5['board_file_table']}</p><p> set bf_source = '{$upload[$i]['source']}',</p><p> bf_file = '{$upload[$i]['file']}',</p><p> bf_content = '{$bf_content[$i]}',</p><p> bf_filesize = '{$upload[$i]['filesize']}',</p><p> bf_width = '{$upload[$i]['image']['0']}',</p><p> bf_height = '{$upload[$i]['image']['1']}',</p><p> bf_type = '{$upload[$i]['image']['2']}',</p><p> bf_datetime = '".G5_TIME_YMDHIS."'</p><p> where bo_table = '{$bo_table}'</p><p> and wr_id = '{$wr_id}'</p><p> and bf_no = '{$i}' ";</p><p> sql_query($sql);</p><p> }</p><p> else</p><p> {</p><p> $sql = " update {$g5['board_file_table']}</p><p> set bf_content = '{$bf_content[$i]}'</p><p> where bo_table = '{$bo_table}'</p><p> and wr_id = '{$wr_id}'</p><p> and bf_no = '{$i}' ";</p><p> sql_query($sql);</p><p> }</p><p> }</p><p> else</p><p> {</p><p> $sql = " insert into {$g5['board_file_table']}</p><p> set bo_table = '{$bo_table}',</p><p> wr_id = '{$wr_id}',</p><p> bf_no = '{$i}',</p><p> bf_source = '{$upload[$i]['source']}',</p><p> bf_file = '{$upload[$i]['file']}',</p><p> bf_content = '{$bf_content[$i]}',</p><p> bf_download = 0,</p><p> bf_filesize = '{$upload[$i]['filesize']}',</p><p> bf_width = '{$upload[$i]['image']['0']}',</p><p> bf_height = '{$upload[$i]['image']['1']}',</p><p> bf_type = '{$upload[$i]['image']['2']}',</p><p> bf_datetime = '".G5_TIME_YMDHIS."' ";</p><p> sql_query($sql);</p><p> }</p><p>}</p><p> </p><p>// 업로드된 파일 내용에서 가장 큰 번호를 얻어 거꾸로 확인해 가면서</p><p>// 파일 정보가 없다면 테이블의 내용을 삭제합니다.</p><p>$row = sql_fetch(" select max(bf_no) as max_bf_no from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' ");</p><p>for ($i=(int)$row['max_bf_no']; $i>=0; $i--)</p><p>{</p><p> $row2 = sql_fetch(" select bf_file from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' ");</p><p> </p><p> // 정보가 있다면 빠집니다.</p><p> if ($row2['bf_file']) break;</p><p> </p><p> // 그렇지 않다면 정보를 삭제합니다.</p><p> sql_query(" delete from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' and bf_no = '{$i}' ");</p><p>}</p><p> </p><p>// 파일의 개수를 게시물에 업데이트 한다.</p><p>$row = sql_fetch(" select count(*) as cnt from {$g5['board_file_table']} where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' ");</p><p>sql_query(" update {$write_table} set wr_file = '{$row['cnt']}' where wr_id = '{$wr_id}' ");</p><p> </p><p>// 자동저장된 레코드를 삭제한다.</p><p>sql_query(" delete from {$g5['autosave_table']} where as_uid = '{$uid}' ");</p><p>//------------------------------------------------------------------------------</p><p> </p><p>// 비밀글이라면 세션에 비밀글의 아이디를 저장한다. 자신의 글은 다시 비밀번호를 묻지 않기 위함</p><p>if ($secret)</p><p> set_session("ss_secret_{$bo_table}_{$wr_num}", TRUE);</p><p> </p><p>// 메일발송 사용 (수정글은 발송하지 않음)</p><p>if (!($w == 'u' || $w == 'cu') && $config['cf_email_use'] && $board['bo_use_email']) {</p><p> </p><p> // 관리자의 정보를 얻고</p><p> $super_admin = get_admin('super');</p><p> $group_admin = get_admin('group');</p><p> $board_admin = get_admin('board');</p><p> </p><p> $wr_subject = get_text(stripslashes($wr_subject));</p><p> </p><p> $tmp_html = 0;</p><p> if (strstr($html, 'html1'))</p><p> $tmp_html = 1;</p><p> else if (strstr($html, 'html2'))</p><p> $tmp_html = 2;</p><p> </p><p> $wr_content = conv_content(stripslashes($wr_content), $tmp_html);</p><p> </p><p> $warr = array( ''=>'입력', 'u'=>'수정', 'r'=>'답변', 'c'=>'코멘트', 'cu'=>'코멘트 수정' );</p><p> $str = $warr[$w];</p><p> </p><p> $subject = '['.$config['cf_title'].'] '.$board['bo_subject'].' 게시판에 '.$str.'글이 올라왔습니다.';</p><p> </p><p> $link_url = G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&'.$qstr;</p><p> </p><p> include_once(G5_LIB_PATH.'/mailer.lib.php');</p><p> </p><p> ob_start();</p><p> include_once ('./write_update_mail.php');</p><p> $content = ob_get_contents();</p><p> ob_end_clean();</p><p> </p><p> $array_email = array();</p><p> // 게시판관리자에게 보내는 메일</p><p> if ($config['cf_email_wr_board_admin']) $array_email[] = $board_admin['mb_email'];</p><p> // 게시판그룹관리자에게 보내는 메일</p><p> if ($config['cf_email_wr_group_admin']) $array_email[] = $group_admin['mb_email'];</p><p> // 최고관리자에게 보내는 메일</p><p> if ($config['cf_email_wr_super_admin']) $array_email[] = $super_admin['mb_email'];</p><p> </p><p> // 옵션에 메일받기가 체크되어 있고, 게시자의 메일이 있다면</p><p> if (strstr($wr['wr_option'], 'mail') && $wr['wr_email']) {</p><p> // 원글 메일발송에 체크가 되어 있다면</p><p> if ($config['cf_email_wr_write']) $array_email[] = $wr['wr_email'];</p><p> </p><p> // 코멘트 쓴 모든이에게 메일 발송이 되어 있다면 (자신에게는 발송하지 않는다)</p><p> if ($config['cf_email_wr_comment_all']) {</p><p> $sql = " select distinct wr_email from {$write_table}</p><p> where wr_email not in ( '{$wr['wr_email']}', '{$member['mb_email']}', '' )</p><p> and wr_parent = '{$wr_id}' ";</p><p> $result = sql_query($sql);</p><p> while ($row=sql_fetch_array($result))</p><p> $array_email[] = $row['wr_email'];</p><p> }</p><p> }</p><p> </p><p> // 중복된 메일 주소는 제거</p><p> $unique_email = array_unique($array_email);</p><p> $unique_email = array_values($unique_email);</p><p> for ($i=0; $i<count($unique_email); $i++) {</p><p> mailer($wr_name, $wr_email, $unique_email[$i], $subject, $content, 1);</p><p> }</p><p>}</p><p> </p><p>// 사용자 코드 실행</p><p>@include_once($board_skin_path.'/write_update.skin.php');</p><p>@include_once($board_skin_path.'/write_update.tail.skin.php');</p><p> </p><p>delete_cache_latest($bo_table);</p><p> </p><p>if ($file_upload_msg)</p><p> alert($file_upload_msg, G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr);</p><p>else</p><p> goto_url(G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);</p><p> </p><p>?></p><p>
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
11년 전
//$bo_table = $_REQUEST['bo_table'];
if($bo_table == 'ta_notice') {
include_once(G5_PATH."/디렉토리/engine.php"); }
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
그누보드입문
11년 전
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
채택
채택
채택
답변대기
채택
채택
채택
답변대기
답변대기
답변대기
채택
채택
채택
채택
채택
채택
채택
답변대기
select min(wr_num) as min_wr_num from g5_write_ta_notice
1146 : Table 'testdata.g5_write_ta_notice' doesn't exist
error file : /bbs/write_update.php
위 메시지입니다. 두번째 1146 구문을 보면 1146이 146번째 줄을 의미하는 것 같습니다.
testdata. 으로 시작하는데 사실 testdata는 engine.php 에서 사용하는 DB명입니다.
왜 저게 들어간건지 모르겠는데요.. 한번만 더 도움 부탁드립니다 .ㅠㅠ