'', 'co_include_head'=>'', 'co_include_tail'=>''); if ($w == "" || $w == "u") { if(isset($_REQUEST['co_id']) && preg_match("/[^a-z0-9_]/i", $_REQUEST['co_id'])) alert("ID 는 영문자, 숫자, _ 만 가능합니다."); $sql = " select * from {$g5['content_table']} where co_id = '$co_id' "; $co_row = sql_fetch($sql); } $co_id = isset($_REQUEST['co_id']) ? preg_replace('/[^a-z0-9_]/i', '', $_REQUEST['co_id']) : ''; $co_subject = isset($_POST['co_subject']) ? strip_tags(clean_xss_attributes($_POST['co_subject'])) : ''; $co_include_head = isset($_POST['co_include_head']) ? preg_replace(array("#[\\\]+$#", "#(<\?php|<\?)#i"), "", substr($_POST['co_include_head'], 0, 255)) : ''; $co_include_tail = isset($_POST['co_include_tail']) ? preg_replace(array("#[\\\]+$#", "#(<\?php|<\?)#i"), "", substr($_POST['co_include_tail'], 0, 255)) : ''; $co_tag_filter_use = isset($_POST['co_tag_filter_use']) ? (int) $_POST['co_tag_filter_use'] : 1; $co_himg_del = (isset($_POST['co_himg_del']) && $_POST['co_himg_del']) ? 1 : 0; $co_timg_del = (isset($_POST['co_timg_del']) && $_POST['co_timg_del']) ? 1 : 0; $co_html = isset($_POST['co_html']) ? (int) $_POST['co_html'] : 0; $co_content = isset($_POST['co_content']) ? $_POST['co_content'] : ''; $co_mobile_content = isset($_POST['co_mobile_content']) ? $_POST['co_mobile_content'] : ''; $co_skin = isset($_POST['co_skin']) ? clean_xss_tags($_POST['co_skin'], 1, 1) : ''; $co_mobile_skin = isset($_POST['co_mobile_skin']) ? clean_xss_tags($_POST['co_mobile_skin'], 1, 1) : ''; // 관리자가 자동등록방지를 사용해야 할 경우 if ((( isset($co_row['co_include_head']) && $co_row['co_include_head'] !== $co_include_head ) || ( isset($co_row['co_include_tail']) && $co_row['co_include_tail'] !== $co_include_tail )) && function_exists('get_admin_captcha_by') && get_admin_captcha_by()){ include_once(G5_CAPTCHA_PATH.'/captcha.lib.php'); if (!chk_captcha()) { alert('자동등록방지 숫자가 틀렸습니다.'); } } @mkdir(G5_DATA_PATH."/content", G5_DIR_PERMISSION); @chmod(G5_DATA_PATH."/content", G5_DIR_PERMISSION); if ($co_himg_del) @unlink(G5_DATA_PATH."/content/{$co_id}_h"); if ($co_timg_del) @unlink(G5_DATA_PATH."/content/{$co_id}_t"); $error_msg = ''; if( $co_include_head ){ $file_ext = pathinfo($co_include_head, PATHINFO_EXTENSION); if( ! $file_ext || ! in_array($file_ext, array('php', 'htm', 'html')) || ! preg_match('/^.*\.(php|htm|html)$/i', $co_include_head) ) { alert('상단 파일 경로의 확장자는 php, htm, html 만 허용합니다.'); } } if( $co_include_tail ){ $file_ext = pathinfo($co_include_tail, PATHINFO_EXTENSION); if( ! $file_ext || ! in_array($file_ext, array('php', 'htm', 'html')) || ! preg_match('/^.*\.(php|htm|html)$/i', $co_include_tail) ) { alert('하단 파일 경로의 확장자는 php, htm, html 만 허용합니다.'); } } if( $co_include_head && ! is_include_path_check($co_include_head, 1) ){ $co_include_head = ''; $error_msg = '/data/file/ 또는 /data/editor/ 포함된 문자를 상단 파일 경로에 포함시킬수 없습니다.'; } if( $co_include_tail && ! is_include_path_check($co_include_tail, 1) ){ $co_include_tail = ''; $error_msg = '/data/file/ 또는 /data/editor/ 포함된 문자를 하단 파일 경로에 포함시킬수 없습니다.'; } if( function_exists('filter_input_include_path') ){ $co_include_head = filter_input_include_path($co_include_head); $co_include_tail = filter_input_include_path($co_include_tail); } $co_seo_title = exist_seo_title_recursive('content', generate_seo_title($co_subject), $g5['content_table'], $co_id); $sql_common = " co_include_head = '$co_include_head', co_include_tail = '$co_include_tail', co_html = '$co_html', co_tag_filter_use = '$co_tag_filter_use', co_subject = '$co_subject', co_content = '$co_content', co_mobile_content = '$co_mobile_content', co_seo_title = '$co_seo_title', co_skin = '$co_skin', co_mobile_skin = '$co_mobile_skin' "; if ($w == "") { $row = $co_row; if (isset($row['co_id']) && $row['co_id']) alert("이미 같은 ID로 등록된 내용이 있습니다."); $sql = " insert {$g5['content_table']} set co_id = '$co_id', $sql_common "; sql_query($sql); } else if ($w == "u") { $sql = " update {$g5['content_table']} set $sql_common where co_id = '$co_id' "; sql_query($sql); } else if ($w == "d") { @unlink(G5_DATA_PATH."/content/{$co_id}_h"); @unlink(G5_DATA_PATH."/content/{$co_id}_t"); $sql = " delete from {$g5['content_table']} where co_id = '$co_id' "; sql_query($sql); } if(function_exists('get_admin_captcha_by')) get_admin_captcha_by('remove'); g5_delete_cache_by_prefix('content-'.$co_id.'-'); if ($w == "" || $w == "u") { if ($_FILES['co_himg']['name']) { $dest_path = G5_DATA_PATH."/content/".$co_id."_h"; @move_uploaded_file($_FILES['co_himg']['tmp_name'], $dest_path); @chmod($dest_path, G5_FILE_PERMISSION); } if ($_FILES['co_timg']['name']) { $dest_path = G5_DATA_PATH."/content/".$co_id."_t"; @move_uploaded_file($_FILES['co_timg']['tmp_name'], $dest_path); @chmod($dest_path, G5_FILE_PERMISSION); } if( $error_msg ){ alert($error_msg, "./contentform.php?w=u&co_id=$co_id"); } else { goto_url("./contentform.php?w=u&co_id=$co_id"); } } else { goto_url("./contentlist.php"); }