diff --git a/install/ajax.install.check.php b/install/ajax.install.check.php index 0730994f7..c7d48aa28 100644 --- a/install/ajax.install.check.php +++ b/install/ajax.install.check.php @@ -7,6 +7,8 @@ include_once('../lib/common.lib.php'); // 공통 라이브러리 include_once('../lib/hook.lib.php'); // hook 함수 파일 include_once('../lib/get_data.lib.php'); // 데이터 가져오는 함수 모음 +@header('Content-Type: application/json; charset=utf-8'); + $data_path = '../'.G5_DATA_DIR; // 파일이 존재한다면 설치할 수 없다. @@ -30,29 +32,32 @@ $ajax_token = md5($tmp_str.$_SERVER['REMOTE_ADDR'].dirname(dirname(__FILE__).'/' $bool_ajax_token = (isset($_POST['ajax_token']) && ($ajax_token == $_POST['ajax_token'])) ? true : false; -if (!($mysql_host && $mysql_user && $mysql_pass && $mysql_db && $table_prefix && $bool_ajax_token)) { +if (!($mysql_host && $mysql_user && $mysql_db && $table_prefix && $bool_ajax_token)) { die(install_json_msg('잘못된 요청입니다.')); } -try { - $dblink = sql_connect($mysql_host, $mysql_user, $mysql_pass, $mysql_db); -} catch (Exception $e) { +$connect = install_db_connect($mysql_host, $mysql_user, $mysql_pass, $mysql_db); +$dblink = $connect['link']; + +if (!$dblink || $connect['message']) { + if ($connect['error']) { + install_error_log($connect['message'].' | '.$connect['error']); + } + die(install_json_msg($connect['message'] ? $connect['message'] : 'MySQL 정보를 확인해 주십시오.')); } -if (!isset($dblink)) { - die(install_json_msg('MySQL Host, User, Password 를 확인해 주십시오.')); +$db_check = install_check_db_capability($dblink, $table_prefix); +if (!$db_check[0]) { + die(install_json_msg($db_check[1])); } -try { - $select_db = sql_select_db($mysql_db, $dblink); -} catch (Exception $e) { +$table_check_error = ''; +$table_exists = install_table_exists($dblink, $table_prefix.'config', $table_check_error); +if ($table_check_error) { + die(install_json_msg('테이블 존재 여부를 확인하지 못했습니다. DB 계정 권한을 확인해 주십시오.')); } -if (!isset($select_db)) { - die(install_json_msg('MySQL DB 를 확인해 주십시오.')); -} - -if (sql_query("SHOW TABLES LIKE `{$table_prefix}config`", G5_DISPLAY_SQL_ERROR, $dblink)) { +if ($table_exists) { die(install_json_msg('주의! 이미 테이블이 존재하므로, 기존 DB 자료가 망실됩니다. 계속 진행하겠습니까?', 'exists')); } diff --git a/install/index.php b/install/index.php index c2d6721e9..a7e3a3c16 100644 --- a/install/index.php +++ b/install/index.php @@ -12,6 +12,7 @@ include_once ('./install.inc.php'); if ($exists_data_dir && $write_data_dir) { // 필수 모듈 체크 require_once('./library.check.php'); + if (empty($install_library_required_missing)) { ?>