$value) { if (strpos($key, 'bu_') === 0) { // 로고 삭제 필드(_del)는 DB에 저장하지 않음 if (substr($key, -4) !== '_del') { $bu_data[$key] = sql_real_escape_string($value); } } } // 숫자형으로 강제 변환하여 타입 안전성 확보 $bu_data['bu_load'] = isset($_POST['bu_load']) ? 1 : 0; $bu_data['bu_systemmsg_use'] = isset($_POST['bu_systemmsg_use']) ? 1 : 0; $bu_data['bu_trans_header'] = isset($_POST['bu_trans_header']) ? 1 : 0; // SQL SET 구문 동적 생성 $sql_set_clauses = array(); foreach ($bu_data as $key => $value) { $sql_set_clauses[] = "`{$key}` = '{$value}'"; } $sql_set_clauses[] = "bu_datetime = '".G5_TIME_YMDHIS."'"; $sql_set_string = implode(', ', $sql_set_clauses); $cnt_row = sql_fetch("SELECT COUNT(*) as cnt FROM rb_builder"); // 데이터 존재 여부에 따라 UPDATE 또는 INSERT 실행 if ($cnt_row['cnt'] > 0) { $sql = "UPDATE rb_builder SET {$sql_set_string}"; } else { $sql = "INSERT INTO rb_builder SET {$sql_set_string}"; } sql_query($sql); // ================================================================== // 2. DB 테이블 설치 (최초 1회 실행) // ================================================================== } else { //폴더생성 @mkdir(G5_DATA_PATH."/seo", G5_DIR_PERMISSION); @chmod(G5_DATA_PATH."/seo", G5_DIR_PERMISSION); @mkdir(G5_DATA_PATH."/banners", G5_DIR_PERMISSION); @chmod(G5_DATA_PATH."/banners", G5_DIR_PERMISSION); @mkdir(G5_DATA_PATH."/logos", G5_DIR_PERMISSION); @chmod(G5_DATA_PATH."/logos", G5_DIR_PERMISSION); //빌더설정 테이블 if(!sql_query(" DESCRIBE rb_builder ", false)) { sql_query(" CREATE TABLE IF NOT EXISTS `rb_builder` ( `bu_logo_pc` varchar(255) NOT NULL DEFAULT '' COMMENT '로고 PC', `bu_logo_pc_w` varchar(255) NOT NULL DEFAULT '' COMMENT '로고 PC W', `bu_logo_mo` varchar(255) NOT NULL DEFAULT '' COMMENT '로고 MO', `bu_logo_mo_w` varchar(255) NOT NULL DEFAULT '' COMMENT '로고 MO W', `bu_trans_header` tinyint(4) NOT NULL DEFAULT 0 COMMENT '메인 헤더 투명 효과', `bu_load` int(4) NOT NULL DEFAULT 1 COMMENT '로딩인디케이터', `bu_systemmsg_use` int(4) NOT NULL DEFAULT 1 COMMENT '시스템메세지 관리자수신여부', `bu_1` varchar(255) NOT NULL DEFAULT '' COMMENT '회사명', `bu_2` varchar(255) NOT NULL DEFAULT '' COMMENT '대표자명', `bu_3` varchar(255) NOT NULL DEFAULT '' COMMENT '전화번호', `bu_4` varchar(255) NOT NULL DEFAULT '' COMMENT '팩스번호', `bu_5` varchar(255) NOT NULL DEFAULT '' COMMENT '사업자등록번호', `bu_6` varchar(255) NOT NULL DEFAULT '' COMMENT '통신판매업신고번호', `bu_7` varchar(255) NOT NULL DEFAULT '' COMMENT '부가통신사업자번호', `bu_8` varchar(255) NOT NULL DEFAULT '' COMMENT '기타등록번호1', `bu_9` varchar(255) NOT NULL DEFAULT '' COMMENT '우편번호', `bu_10` varchar(255) NOT NULL DEFAULT '' COMMENT '사업장주소', `bu_11` varchar(255) NOT NULL DEFAULT '' COMMENT '개인정보책임자', `bu_12` varchar(255) NOT NULL DEFAULT '' COMMENT '카피라이트', `bu_13` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_14` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_15` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_16` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_17` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_18` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_19` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_20` varchar(255) NOT NULL DEFAULT '' COMMENT '', `bu_sns1` varchar(255) NOT NULL DEFAULT '' COMMENT '카카오채널', `bu_sns2` varchar(255) NOT NULL DEFAULT '' COMMENT '카카오상담', `bu_sns3` varchar(255) NOT NULL DEFAULT '' COMMENT '유튜브', `bu_sns4` varchar(255) NOT NULL DEFAULT '' COMMENT '인스타그램', `bu_sns5` varchar(255) NOT NULL DEFAULT '' COMMENT '페이스북', `bu_sns6` varchar(255) NOT NULL DEFAULT '' COMMENT '트위터', `bu_sns7` varchar(255) NOT NULL DEFAULT '' COMMENT '네이버블로그', `bu_sns8` varchar(255) NOT NULL DEFAULT '' COMMENT '텔레그램', `bu_sns9` varchar(255) NOT NULL DEFAULT '' COMMENT 'SIR', `bu_sns10` varchar(255) NOT NULL DEFAULT '' COMMENT '기타', `bu_viewport` varchar(10) NOT NULL, `bu_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '등록일시(변경일시)' ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true); } //환경설정 테이블 if(!sql_query(" DESCRIBE rb_config ", false)) { sql_query(" CREATE TABLE IF NOT EXISTS `rb_config` ( `co_id` int(11) NOT NULL AUTO_INCREMENT, `co_color` varchar(20) NOT NULL DEFAULT '#aa20ff' COMMENT '강조 컬러', `co_dark` varchar(20) NOT NULL DEFAULT '' COMMENT '다크모드', `co_layout` varchar(20) NOT NULL DEFAULT '' COMMENT '레이아웃', `co_layout_hd` varchar(20) NOT NULL DEFAULT '' COMMENT '레이아웃(헤더)', `co_layout_ft` varchar(20) NOT NULL DEFAULT '' COMMENT '레이아웃(푸더)', `co_sub_width` varchar(20) NOT NULL COMMENT '서브가로폭', `co_main_width` varchar(20) NOT NULL COMMENT '메인가로폭', `co_tb_width` varchar(20) NOT NULL COMMENT '상/하단가로폭', `co_header` varchar(20) NOT NULL DEFAULT '#ffffff' COMMENT '헤더', `co_footer` varchar(20) NOT NULL COMMENT '풋터', `co_font` varchar(20) NOT NULL DEFAULT '' COMMENT '폰트', `co_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '등록일시(변경일시)', `co_ip` varchar(100) NOT NULL DEFAULT '' COMMENT '등록자IP', PRIMARY KEY (`co_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true); } $cnt_config = sql_fetch("SELECT COUNT(*) as cnt FROM rb_config"); if ($cnt_config['cnt'] == 0) { $sql = " insert rb_config set co_color = '#aa20ff', co_dark = '', co_layout = 'basic', co_layout_hd = 'basic', co_layout_ft = 'basic', co_sub_width = '960', co_main_width = '1400', co_tb_width = '1400', co_header = '#ffffff', co_footer = '0', co_font = 'Pretendard', co_datetime = '".G5_TIME_YMDHIS."', co_ip = '' "; sql_query($sql); } //모듈설정 테이블 if(!sql_query(" DESCRIBE rb_module ", false)) { sql_query(" CREATE TABLE IF NOT EXISTS `rb_module` ( `md_id` int(11) NOT NULL AUTO_INCREMENT, `md_layout` varchar(255) NOT NULL DEFAULT '' COMMENT '레이아웃 아이디', `md_layout_name` varchar(255) NOT NULL DEFAULT '' COMMENT '레이아웃이름', `md_theme` varchar(255) NOT NULL DEFAULT '' COMMENT '테마명', `md_title` varchar(255) NOT NULL DEFAULT '' COMMENT '모듈타이틀', `md_type` varchar(255) NOT NULL DEFAULT '' COMMENT '모듈타입', `md_bo_table` varchar(255) NOT NULL DEFAULT '' COMMENT '연결 게시판', `md_sca` varchar(255) NOT NULL DEFAULT '' COMMENT '연결 카테고리', `md_widget` varchar(255) NOT NULL DEFAULT '' COMMENT '프로그램', `md_poll` varchar(255) NOT NULL DEFAULT '' COMMENT '투표', `md_poll_id` varchar(20) NOT NULL DEFAULT '' COMMENT '투표ID', `md_custom_skin` varchar(255) NOT NULL DEFAULT '' COMMENT '커스텀 모듈 스킨', `md_banner` varchar(255) NOT NULL DEFAULT '' COMMENT '배너', `md_banner_id` varchar(20) NOT NULL DEFAULT '' COMMENT '배너ID', `md_banner_skin` varchar(255) NOT NULL DEFAULT '' COMMENT '배너스킨', `md_module` varchar(255) NOT NULL DEFAULT '' COMMENT '출력모듈', `md_skin` varchar(255) NOT NULL DEFAULT '' COMMENT '출력스킨', `md_cnt` int(10) NOT NULL DEFAULT 1 COMMENT '출력갯수', `md_auto_time` int(10) NOT NULL DEFAULT 3000 COMMENT '오토플레이타임', `md_gap` int(10) NOT NULL DEFAULT 40 COMMENT '여백(간격)', `md_gap_mo` int(10) NOT NULL DEFAULT 20 COMMENT '모바일 여백(간격)', `md_col` int(10) NOT NULL DEFAULT 1 COMMENT '출력갯수(열/가로)', `md_row` int(10) NOT NULL DEFAULT 1 COMMENT '출력갯수(행/세로)', `md_col_mo` int(10) NOT NULL DEFAULT 1 COMMENT '모바일 출력갯수(열/가로)', `md_row_mo` int(10) NOT NULL DEFAULT 1 COMMENT '모바일 출력갯수(행/세로)', `md_width` varchar(20) NOT NULL DEFAULT '100%' COMMENT '가로사이즈', `md_height` varchar(20) NOT NULL DEFAULT 'auto' COMMENT '세로사이즈', `md_subject_is` int(4) NOT NULL COMMENT '출력항목(제목)', `md_thumb_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(썸네일)', `md_nick_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(닉네임)', `md_date_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(작성일시)', `md_content_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(본문)', `md_icon_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(아이콘)', `md_comment_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(코멘트)', `md_ca_is` int(4) NOT NULL DEFAULT 1 COMMENT '출력항목(카테고리)', `md_swiper_is` int(4) NOT NULL DEFAULT 0 COMMENT '스와이프여부', `md_auto_is` int(4) NOT NULL DEFAULT 0 COMMENT '오토플레이 여부', `md_order` varchar(255) NOT NULL DEFAULT 'wr_num' COMMENT '출력순서', `md_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '등록일시(변경일시)', `md_ip` varchar(100) NOT NULL DEFAULT '' COMMENT '등록자IP', `md_order_id` int(4) NOT NULL DEFAULT 0 COMMENT '모듈순서', PRIMARY KEY (`md_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true); } //배너관리 테이블 if(!sql_query(" DESCRIBE rb_banner ", false)) { sql_query(" CREATE TABLE IF NOT EXISTS `rb_banner` ( `bn_id` int(11) NOT NULL AUTO_INCREMENT, `bn_alt` varchar(255) NOT NULL DEFAULT '', `bn_url` varchar(255) NOT NULL DEFAULT '', `bn_device` varchar(10) NOT NULL DEFAULT '', `bn_position` varchar(255) NOT NULL DEFAULT '', `bn_border` tinyint(4) NOT NULL DEFAULT '0', `bn_radius` tinyint(4) NOT NULL DEFAULT '0', `bn_ad_ico` tinyint(4) NOT NULL DEFAULT '0', `bn_new_win` tinyint(4) NOT NULL DEFAULT '0', `bn_begin_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `bn_end_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `bn_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `bn_hit` int(11) NOT NULL DEFAULT '0', `bn_order` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`bn_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true); } //SEO설정 테이블 if(!sql_query(" DESCRIBE rb_seo ", false)) { sql_query(" CREATE TABLE IF NOT EXISTS `rb_seo` ( `se_title` varchar(255) NOT NULL COMMENT '사이트명', `se_description` mediumtext NOT NULL COMMENT '사이트설명', `se_keywords` mediumtext NOT NULL COMMENT '키워드', `se_favicon` varchar(255) NOT NULL COMMENT '파비콘', `se_google_meta` varchar(255) NOT NULL COMMENT '구글 소유권 메타', `se_naver_meta` varchar(255) NOT NULL COMMENT '네이버 소유권 메타', `se_robots` mediumtext NOT NULL COMMENT '로봇접근제어', `se_og_image` varchar(255) NOT NULL COMMENT '오픈그래프 이미지', `se_og_site_name` varchar(255) NOT NULL COMMENT '오픈그래프 사이트명', `se_og_title` varchar(255) NOT NULL COMMENT '오픈그래프 사이트명', `se_og_description` varchar(255) NOT NULL COMMENT '오픈그래프 사이트 설명', `se_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '등록일시(변경일시)' ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true); } alert('DB 테이블 설치가 완료 되었습니다.\\n[DB 업데이트] 를 반드시 실행해주세요.\\n테이블 설치 후 환경설정 > 테마설정 메뉴에서\\nRebuilder Basic 테마를 적용해주세요.'); } update_rewrite_rules(); goto_url('./rb_form.php', false);