Changeset 21492 for branches/version-2_12-dev
- Timestamp:
- 2012/02/13 12:02:15 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_12-dev/html/install/index.php
r21491 r21492 27 27 require_once HTML_REALDIR . 'define.php'; 28 28 define('INSTALL_FUNCTION', true); 29 define('INSTALL_INFO_URL', "http://www.ec-cube.net/install_info/index.php");29 define('INSTALL_INFO_URL', 'http://www.ec-cube.net/install_info/index.php'); 30 30 while (ob_get_level() >= 1) { 31 31 ob_end_clean(); … … 38 38 39 39 if (!defined('ADMIN_DIR')) { 40 define('ADMIN_DIR', "admin/");41 } 42 43 define('INSTALL_LOG', "./temp/install.log");40 define('ADMIN_DIR', 'admin/'); 41 } 42 43 define('INSTALL_LOG', './temp/install.log'); 44 44 ini_set('max_execution_time', 300); 45 45 … … 47 47 $objPage->arrDB_TYPE = array( 48 48 'pgsql' => 'PostgreSQL', 49 'mysql' => 'MySQL' 49 'mysql' => 'MySQL', 50 50 ); 51 51 $objPage->arrDB_PORT = array( 52 52 'pgsql' => '', 53 'mysql' => '' 53 'mysql' => '', 54 54 ); 55 55 … … 60 60 61 61 if (!is_writable($temp_dir)) { 62 SC_Utils_Ex::sfErrorHeader($temp_dir . "にユーザ書込み権限(777, 707等)を付与して下さい。", true);62 SC_Utils_Ex::sfErrorHeader($temp_dir . 'にユーザ書込み権限(777, 707等)を付与して下さい。', true); 63 63 exit; 64 64 } … … 80 80 81 81 switch ($mode) { 82 // ようこそ 83 case 'welcome': 84 //$objPage = lfDispAgreement($objPage); 85 $objPage = lfDispStep0($objPage); 86 //$objPage->tpl_onload .= "fnChangeVisible('agreement_yes', 'next');"; 87 break; 88 89 /* 現在保留中 90 91 // 使用許諾契約書の同意 92 case 'agreement': 93 $objPage = lfDispStep0($objPage); 94 break; 95 */ 96 97 // アクセス権限のチェック 98 case 'step0': 99 $objPage = lfDispStep0_1($objPage); 100 break; 101 // ファイルのコピー 102 case 'step0_1': 103 $objPage = lfDispStep1($objPage); 104 break; 105 // WEBサイトの設定 106 case 'step1': 107 //入力値のエラーチェック 108 $objPage->arrErr = lfCheckWebError($objWebParam); 109 if (count($objPage->arrErr) == 0) { 110 $objPage = lfDispStep2($objPage); 111 } else { 82 // ようこそ 83 case 'welcome': 84 $objPage = lfDispStep0($objPage); 85 break; 86 87 // アクセス権限のチェック 88 case 'step0': 89 $objPage = lfDispStep0_1($objPage); 90 break; 91 // ファイルのコピー 92 case 'step0_1': 112 93 $objPage = lfDispStep1($objPage); 113 } 114 break; 115 // データベースの設定 116 case 'step2': 117 //入力値のエラーチェック 118 $objPage->arrErr = lfCheckDBError($objDBParam); 119 if (count($objPage->arrErr) == 0) { 120 if ($err = renameAdminDir($objWebParam->getValue('admin_dir')) !== true) { 121 $objPage->arrErr['all'] .= $err; 94 break; 95 // WEBサイトの設定 96 case 'step1': 97 //入力値のエラーチェック 98 $objPage->arrErr = lfCheckWebError($objWebParam); 99 if (count($objPage->arrErr) == 0) { 122 100 $objPage = lfDispStep2($objPage); 123 101 } else { 102 $objPage = lfDispStep1($objPage); 103 } 104 break; 105 // データベースの設定 106 case 'step2': 107 //入力値のエラーチェック 108 $objPage->arrErr = lfCheckDBError($objDBParam); 109 if (count($objPage->arrErr) == 0) { 110 if ($err = renameAdminDir($objWebParam->getValue('admin_dir')) !== true) { 111 $objPage->arrErr['all'] .= $err; 112 $objPage = lfDispStep2($objPage); 113 } else { 114 $objPage = lfDispStep3($objPage); 115 } 116 } else { 117 $objPage = lfDispStep2($objPage); 118 } 119 break; 120 // テーブルの作成 121 case 'step3': 122 // 入力データを渡す。 123 $arrRet = $objDBParam->getHashArray(); 124 define('DB_TYPE', $arrRet['db_type']); 125 $dsn = $arrRet['db_type'] . '://' . $arrRet['db_user'] . ':' . $arrRet['db_password'] . '@' . $arrRet['db_server'] . ':' . $arrRet['db_port'] . '/' . $arrRet['db_name']; 126 127 if (count($objPage->arrErr) == 0) { 128 // スキップする場合には次画面へ遷移 129 $skip = $_POST['db_skip']; 130 if ($skip == 'on') { 131 $objPage = lfDispStep4($objPage); 132 break; 133 } 134 } 135 136 // テーブルの作成 137 $objPage->arrErr = lfExecuteSQL('./sql/create_table_' . $arrRet['db_type'] . '.sql', $dsn); 138 if (count($objPage->arrErr) == 0) { 139 $objPage->tpl_message .= '○:テーブルの作成に成功しました。<br />'; 140 } else { 141 $objPage->tpl_message .= '×:テーブルの作成に失敗しました。<br />'; 142 } 143 144 // 初期データの作成 145 if (count($objPage->arrErr) == 0) { 146 $objPage->arrErr = lfExecuteSQL('./sql/insert_data.sql', $dsn); 147 if (count($objPage->arrErr) == 0) { 148 $objPage->tpl_message .= '○:初期データの作成に成功しました。<br />'; 149 } else { 150 $objPage->tpl_message .= '×:初期データの作成に失敗しました。<br />'; 151 } 152 } 153 154 // シーケンスの作成 155 if (count($objPage->arrErr) == 0) { 156 $objPage->arrErr = lfCreateSequence(getSequences(), $dsn); 157 if (count($objPage->arrErr) == 0) { 158 $objPage->tpl_message .= '○:シーケンスの作成に成功しました。<br />'; 159 } else { 160 $objPage->tpl_message .= '×:シーケンスの作成に失敗しました。<br />'; 161 } 162 } 163 164 if (count($objPage->arrErr) == 0) { 124 165 $objPage = lfDispStep3($objPage); 125 } 126 } else { 166 $objPage->tpl_mode = 'step4'; 167 } else { 168 $objPage = lfDispStep3($objPage); 169 } 170 break; 171 case 'step4': 172 $objPage = lfDispStep4($objPage); 173 break; 174 175 // テーブル類削除 176 case 'drop': 177 // 入力データを渡す。 178 $arrRet = $objDBParam->getHashArray(); 179 if (!defined('DB_TYPE')) { 180 define('DB_TYPE', $arrRet['db_type']); 181 } 182 $dsn = $arrRet['db_type'] . '://' . $arrRet['db_user'] . ':' . $arrRet['db_password'] . '@' . $arrRet['db_server'] . ':' . $arrRet['db_port'] . '/' . $arrRet['db_name']; 183 184 // テーブルの削除 185 if (count($objPage->arrErr) == 0) { 186 $objPage->arrErr = lfExecuteSQL('./sql/drop_table.sql', $dsn, false); 187 if (count($objPage->arrErr) == 0) { 188 $objPage->tpl_message .= '○:テーブルの削除に成功しました。<br />'; 189 } else { 190 $objPage->tpl_message .= '×:テーブルの削除に失敗しました。<br />'; 191 } 192 } 193 194 // シーケンスの削除 195 if (count($objPage->arrErr) == 0) { 196 $objPage->arrErr = lfDropSequence(getSequences(), $dsn); 197 if (count($objPage->arrErr) == 0) { 198 $objPage->tpl_message .= '○:シーケンスの削除に成功しました。<br />'; 199 } else { 200 $objPage->tpl_message .= '×:シーケンスの削除に失敗しました。<br />'; 201 } 202 } 203 204 $objPage = lfDispStep3($objPage); 205 break; 206 // 完了画面 207 case 'complete': 208 209 $GLOBAL_ERR = ''; 210 $objPage = lfDispComplete($objPage); 211 212 if (isset($_POST['send_info']) && $_POST['send_info'] === 'true') { 213 // サイト情報を送信 214 $req = new HTTP_Request('http://www.ec-cube.net/mall/use_site.php'); 215 $req->setMethod(HTTP_REQUEST_METHOD_POST); 216 217 $arrSendData = array(); 218 foreach ($_POST as $key => $val) { 219 if (ereg('^senddata_*', $key)) { 220 $arrSendDataTmp = array(str_replace('senddata_', '', $key) => $val); 221 $arrSendData = array_merge($arrSendData, $arrSendDataTmp); 222 } 223 } 224 225 foreach ($arrSendData as $key => $val) { 226 $req->addPostData($key, $val); 227 } 228 229 if (!PEAR::isError($req->sendRequest())) { 230 $response1 = $req->getResponseBody(); 231 } else { 232 $response1 = ''; 233 } 234 $req->clearPostData(); 235 } 236 237 break; 238 case 'return_step0': 239 $objPage = lfDispStep0($objPage); 240 break; 241 case 'return_step1': 242 $objPage = lfDispStep1($objPage); 243 break; 244 case 'return_step2': 127 245 $objPage = lfDispStep2($objPage); 128 } 129 break; 130 // テーブルの作成 131 case 'step3': 132 // 入力データを渡す。 133 $arrRet = $objDBParam->getHashArray(); 134 define('DB_TYPE', $arrRet['db_type']); 135 $dsn = $arrRet['db_type']."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].":".$arrRet['db_port']."/".$arrRet['db_name']; 136 137 if (count($objPage->arrErr) == 0) { 138 // スキップする場合には次画面へ遷移 139 $skip = $_POST['db_skip']; 140 if ($skip == 'on') { 141 $objPage = lfDispStep4($objPage); 142 break; 143 } 144 } 145 146 // テーブルの作成 147 $objPage->arrErr = lfExecuteSQL("./sql/create_table_".$arrRet['db_type'].".sql", $dsn); 148 if (count($objPage->arrErr) == 0) { 149 $objPage->tpl_message.="○:テーブルの作成に成功しました。<br />"; 150 } else { 151 $objPage->tpl_message.="×:テーブルの作成に失敗しました。<br />"; 152 } 153 154 // 初期データの作成 155 if (count($objPage->arrErr) == 0) { 156 $objPage->arrErr = lfExecuteSQL("./sql/insert_data.sql", $dsn); 157 if (count($objPage->arrErr) == 0) { 158 $objPage->tpl_message.="○:初期データの作成に成功しました。<br />"; 159 } else { 160 $objPage->tpl_message.="×:初期データの作成に失敗しました。<br />"; 161 } 162 } 163 164 // シーケンスの作成 165 if (count($objPage->arrErr) == 0) { 166 $objPage->arrErr = lfCreateSequence(getSequences(), $dsn); 167 if (count($objPage->arrErr) == 0) { 168 $objPage->tpl_message.="○:シーケンスの作成に成功しました。<br />"; 169 } else { 170 $objPage->tpl_message.="×:シーケンスの作成に失敗しました。<br />"; 171 } 172 } 173 174 if (count($objPage->arrErr) == 0) { 246 break; 247 case 'return_step3': 175 248 $objPage = lfDispStep3($objPage); 176 $objPage->tpl_mode = 'step4'; 177 } else { 178 $objPage = lfDispStep3($objPage); 179 } 180 break; 181 case 'step4': 182 $objPage = lfDispStep4($objPage); 183 break; 184 185 // テーブル類削除 186 case 'drop': 187 // 入力データを渡す。 188 $arrRet = $objDBParam->getHashArray(); 189 if (!defined('DB_TYPE')) { 190 define('DB_TYPE', $arrRet['db_type']); 191 } 192 $dsn = $arrRet['db_type']."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].":".$arrRet['db_port']."/".$arrRet['db_name']; 193 194 // テーブルの削除 195 if (count($objPage->arrErr) == 0) { 196 $objPage->arrErr = lfExecuteSQL("./sql/drop_table.sql", $dsn, false); 197 if (count($objPage->arrErr) == 0) { 198 $objPage->tpl_message.="○:テーブルの削除に成功しました。<br />"; 199 } else { 200 $objPage->tpl_message.="×:テーブルの削除に失敗しました。<br />"; 201 } 202 } 203 204 // シーケンスの削除 205 if (count($objPage->arrErr) == 0) { 206 $objPage->arrErr = lfDropSequence(getSequences(), $dsn); 207 if (count($objPage->arrErr) == 0) { 208 $objPage->tpl_message.="○:シーケンスの削除に成功しました。<br />"; 209 } else { 210 $objPage->tpl_message.="×:シーケンスの削除に失敗しました。<br />"; 211 } 212 } 213 214 $objPage = lfDispStep3($objPage); 215 break; 216 // 完了画面 217 case 'complete': 218 219 $GLOBAL_ERR = ""; 220 $objPage = lfDispComplete($objPage); 221 222 if (isset($_POST['send_info']) && $_POST['send_info'] === 'true') { 223 // サイト情報を送信 224 $req = new HTTP_Request("http://www.ec-cube.net/mall/use_site.php"); 225 $req->setMethod(HTTP_REQUEST_METHOD_POST); 226 227 $arrSendData = array(); 228 foreach ($_POST as $key => $val) { 229 if (ereg("^senddata_*", $key)) { 230 $arrSendDataTmp = array(str_replace('senddata_', "", $key) => $val); 231 $arrSendData = array_merge($arrSendData, $arrSendDataTmp); 232 } 233 } 234 235 foreach ($arrSendData as $key => $val) { 236 $req->addPostData($key, $val); 237 } 238 239 if (!PEAR::isError($req->sendRequest())) { 240 $response1 = $req->getResponseBody(); 241 } else { 242 $response1 = ""; 243 } 244 $req->clearPostData(); 245 } 246 247 break; 248 case 'return_step0': 249 $objPage = lfDispStep0($objPage); 250 break; 251 case 'return_step1': 252 $objPage = lfDispStep1($objPage); 253 break; 254 case 'return_step2': 255 $objPage = lfDispStep2($objPage); 256 break; 257 case 'return_step3': 258 $objPage = lfDispStep3($objPage); 259 break; 260 case 'return_agreement': 261 $objPage = lfDispAgreement($objPage); 262 $objPage->tpl_onload .= "fnChangeVisible('agreement_yes', 'next');"; 263 break; 264 case 'return_welcome': 265 default: 266 $objPage = lfDispWelcome($objPage); 267 break; 249 break; 250 case 'return_agreement': 251 $objPage = lfDispAgreement($objPage); 252 $objPage->tpl_onload .= "fnChangeVisible('agreement_yes', 'next');"; 253 break; 254 case 'return_welcome': 255 default: 256 $objPage = lfDispWelcome($objPage); 257 break; 268 258 } 269 259 … … 332 322 ); 333 323 334 $mess = "";324 $mess = ''; 335 325 $hasErr = false; 336 326 foreach ($arrWriteFile as $val) { … … 351 341 if (is_dir($path)) { 352 342 if (!is_writable($path)) { 353 $mess .= ">> ×:$real_path($filemode) \nユーザ書込み権限(777, 707等)を付与して下さい。\n";343 $mess .= ">> ×:$real_path($filemode) \nユーザ書込み権限(777, 707等)を付与して下さい。\n"; 354 344 $hasErr = true; 355 345 } else { 356 GC_Utils_Ex::gfPrintLog( "WRITABLE:".$path, INSTALL_LOG);346 GC_Utils_Ex::gfPrintLog('WRITABLE:' . $path, INSTALL_LOG); 357 347 } 358 348 } else { 359 349 if (!is_writable($path)) { 360 $mess .= ">> ×:$real_path($filemode) \nユーザ書込み権限(666, 606等)を付与して下さい。\n";350 $mess .= ">> ×:$real_path($filemode) \nユーザ書込み権限(666, 606等)を付与して下さい。\n"; 361 351 $hasErr = true; 362 352 } else { 363 GC_Utils_Ex::gfPrintLog( "WRITABLE:".$path, INSTALL_LOG);353 GC_Utils_Ex::gfPrintLog('WRITABLE:' . $path, INSTALL_LOG); 364 354 } 365 355 } 366 356 } else { 367 $mess .= ">> ×:$path が見つかりません。\n";357 $mess .= ">> ×:$path が見つかりません。\n"; 368 358 $hasErr = true; 369 359 } … … 389 379 $objPage->tpl_mode = 'step0'; 390 380 umask(0); 391 $path = HTML_REALDIR . "upload/temp_template";381 $path = HTML_REALDIR . 'upload/temp_template'; 392 382 if (!file_exists($path)) { 393 383 mkdir($path); 394 384 } 395 $path = HTML_REALDIR . "upload/save_image";385 $path = HTML_REALDIR . 'upload/save_image'; 396 386 if (!file_exists($path)) { 397 387 mkdir($path); 398 388 } 399 $path = HTML_REALDIR . "upload/temp_image";389 $path = HTML_REALDIR . 'upload/temp_image'; 400 390 if (!file_exists($path)) { 401 391 mkdir($path); 402 392 } 403 $path = HTML_REALDIR . "upload/graph_image";393 $path = HTML_REALDIR . 'upload/graph_image'; 404 394 if (!file_exists($path)) { 405 395 mkdir($path); 406 396 } 407 $path = HTML_REALDIR . "upload/mobile_image";397 $path = HTML_REALDIR . 'upload/mobile_image'; 408 398 if (!file_exists($path)) { 409 399 mkdir($path); 410 400 } 411 $path = DATA_REALDIR . "downloads/module";401 $path = DATA_REALDIR . 'downloads/module'; 412 402 if (!file_exists($path)) { 413 403 mkdir($path); 414 404 } 415 $path = DATA_REALDIR . "downloads/update";405 $path = DATA_REALDIR . 'downloads/update'; 416 406 if (!file_exists($path)) { 417 407 mkdir($path); 418 408 } 419 $path = DATA_REALDIR . "upload/csv";409 $path = DATA_REALDIR . 'upload/csv'; 420 410 if (!file_exists($path)) { 421 411 mkdir($path); 422 412 } 423 $mess .= ">> ○:アクセス権限は正常です。";413 $mess .= '>> ○:アクセス権限は正常です。'; 424 414 } 425 415 … … 444 434 $objPage->tpl_mode = 'step0_1'; 445 435 // ファイルコピー 446 $objPage->copy_mess = SC_Utils_Ex::sfCopyDir( "./save_image/", HTML_REALDIR . "upload/save_image/", $objPage->copy_mess);436 $objPage->copy_mess = SC_Utils_Ex::sfCopyDir('./save_image/', HTML_REALDIR . 'upload/save_image/', $objPage->copy_mess); 447 437 return $objPage; 448 438 } … … 510 500 $normal_url = $objWebParam->getValue('normal_url'); 511 501 // 語尾に'/'をつける 512 if (!ereg( "/$", $normal_url)) $normal_url = $normal_url . "/";502 if (!ereg('/$', $normal_url)) $normal_url = $normal_url . '/'; 513 503 514 504 $arrDbParam = $objDBParam->getHashArray(); … … 516 506 define('DB_TYPE', $arrDbParam['db_type']); 517 507 } 518 $dsn = $arrDbParam['db_type'] ."://".$arrDbParam['db_user'].":".$arrDbParam['db_password']."@".$arrDbParam['db_server'].":".$arrDbParam['db_port']."/".$arrDbParam['db_name'];508 $dsn = $arrDbParam['db_type'] . '://' . $arrDbParam['db_user'] . ':' . $arrDbParam['db_password'] . '@' . $arrDbParam['db_server'] . ':' . $arrDbParam['db_port'] . '/' . $arrDbParam['db_name']; 519 509 if (!defined('DEFAULT_DSN')) { 520 510 define('DEFAULT_DSN', $dsn); … … 543 533 544 534 // ショップマスター情報の書き込み 545 $arrRet = 546 547 $dsn = $arrRet['db_type'] ."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].":".$arrRet['db_port']."/".$arrRet['db_name'];535 $arrRet = $objDBParam->getHashArray(); 536 537 $dsn = $arrRet['db_type'] . '://' . $arrRet['db_user'] . ':' . $arrRet['db_password'] . '@' . $arrRet['db_server'] . ':' . $arrRet['db_port'] . '/' . $arrRet['db_name']; 548 538 $sqlval['shop_name'] = $objWebParam->getValue('shop_name'); 549 539 $sqlval['email01'] = $objWebParam->getValue('admin_mail'); … … 599 589 $secure_url = $objWebParam->getValue('secure_url'); 600 590 // 語尾に'/'をつける 601 if (!ereg( "/$", $secure_url)) {602 $secure_url = $secure_url . "/";591 if (!ereg('/$', $secure_url)) { 592 $secure_url = $secure_url . '/'; 603 593 } 604 594 $objPage->tpl_sslurl = $secure_url; … … 615 605 $normal_url = HTTP_URL; 616 606 } else { 617 $dir = ereg_replace( "install/.*$", "", $_SERVER['REQUEST_URI']);618 $normal_url = "http://". $_SERVER['HTTP_HOST'] . $dir;607 $dir = ereg_replace('install/.*$', '', $_SERVER['REQUEST_URI']); 608 $normal_url = 'http://' . $_SERVER['HTTP_HOST'] . $dir; 619 609 } 620 610 … … 622 612 $secure_url = HTTPS_URL; 623 613 } else { 624 $dir = ereg_replace( "install/.*$", "", $_SERVER['REQUEST_URI']);625 $secure_url = "http://". $_SERVER['HTTP_HOST'] . $dir;614 $dir = ereg_replace('install/.*$', '', $_SERVER['REQUEST_URI']); 615 $secure_url = 'http://' . $_SERVER['HTTP_HOST'] . $dir; 626 616 } 627 617 … … 632 622 633 623 if (!PEAR::isError($tables) && in_array('dtb_baseinfo', $tables)) { 634 $arrRet = $objQuery->select( "shop_name, email01", 'dtb_baseinfo');624 $arrRet = $objQuery->select('shop_name, email01', 'dtb_baseinfo'); 635 625 $shop_name = $arrRet[0]['shop_name']; 636 626 $admin_mail = $arrRet[0]['email01']; … … 658 648 } 659 649 660 $objWebParam->addParam( "店名", 'shop_name', MTEXT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'), $shop_name);661 $objWebParam->addParam( "管理者:メールアドレス", 'admin_mail', null, "", array('EXIST_CHECK','EMAIL_CHECK','EMAIL_CHAR_CHECK'), $admin_mail);662 $objWebParam->addParam( "管理者:ログインID", 'login_id', ID_MAX_LEN, "", array('EXIST_CHECK','SPTAB_CHECK', 'ALNUM_CHECK'));663 $objWebParam->addParam( "管理者:パスワード", 'login_pass', ID_MAX_LEN, "", array('EXIST_CHECK','SPTAB_CHECK', 'ALNUM_CHECK'));664 $objWebParam->addParam( "管理機能:ディレクトリ", 'admin_dir', ID_MAX_LEN, 'a', array('EXIST_CHECK','SPTAB_CHECK', 'ALNUM_CHECK'), $oldAdminDir);665 $objWebParam->addParam( "管理機能:SSL制限", 'admin_force_ssl', 1, 'n', array('SPTAB_CHECK', 'NUM_CHECK','MAX_LENGTH_CHECK'), $admin_force_ssl);666 $objWebParam->addParam( "管理機能:IP制限", 'admin_allow_hosts', LTEXT_LEN, 'an', array('IP_CHECK','MAX_LENGTH_CHECK'), $admin_allow_hosts);667 $objWebParam->addParam( "URL(通常)", 'normal_url', MTEXT_LEN, "", array('EXIST_CHECK','URL_CHECK','MAX_LENGTH_CHECK'), $normal_url);668 $objWebParam->addParam( "URL(セキュア)", 'secure_url', MTEXT_LEN, "", array('EXIST_CHECK','URL_CHECK','MAX_LENGTH_CHECK'), $secure_url);669 $objWebParam->addParam( "ドメイン", 'domain', MTEXT_LEN, "", array('MAX_LENGTH_CHECK'));650 $objWebParam->addParam('店名', 'shop_name', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), $shop_name); 651 $objWebParam->addParam('管理者:メールアドレス', 'admin_mail', null, '', array('EXIST_CHECK', 'EMAIL_CHECK', 'EMAIL_CHAR_CHECK'), $admin_mail); 652 $objWebParam->addParam('管理者:ログインID', 'login_id', ID_MAX_LEN, '', array('EXIST_CHECK', 'SPTAB_CHECK', 'ALNUM_CHECK')); 653 $objWebParam->addParam('管理者:パスワード', 'login_pass', ID_MAX_LEN, '', array('EXIST_CHECK', 'SPTAB_CHECK', 'ALNUM_CHECK')); 654 $objWebParam->addParam('管理機能:ディレクトリ', 'admin_dir', ID_MAX_LEN, 'a', array('EXIST_CHECK', 'SPTAB_CHECK', 'ALNUM_CHECK'), $oldAdminDir); 655 $objWebParam->addParam('管理機能:SSL制限', 'admin_force_ssl', 1, 'n', array('SPTAB_CHECK', 'NUM_CHECK', 'MAX_LENGTH_CHECK'), $admin_force_ssl); 656 $objWebParam->addParam('管理機能:IP制限', 'admin_allow_hosts', LTEXT_LEN, 'an', array('IP_CHECK', 'MAX_LENGTH_CHECK'), $admin_allow_hosts); 657 $objWebParam->addParam('URL(通常)', 'normal_url', MTEXT_LEN, '', array('EXIST_CHECK', 'URL_CHECK', 'MAX_LENGTH_CHECK'), $normal_url); 658 $objWebParam->addParam('URL(セキュア)', 'secure_url', MTEXT_LEN, '', array('EXIST_CHECK', 'URL_CHECK', 'MAX_LENGTH_CHECK'), $secure_url); 659 $objWebParam->addParam('ドメイン', 'domain', MTEXT_LEN, '', array('MAX_LENGTH_CHECK')); 670 660 671 661 return $objWebParam; … … 678 668 $db_server = DB_SERVER; 679 669 } else { 680 $db_server = "127.0.0.1";670 $db_server = '127.0.0.1'; 681 671 } 682 672 … … 684 674 $db_type = DB_TYPE; 685 675 } else { 686 $db_type = "";676 $db_type = ''; 687 677 } 688 678 … … 690 680 $db_port = DB_PORT; 691 681 } else { 692 $db_port = "";682 $db_port = ''; 693 683 } 694 684 … … 705 695 } 706 696 707 $objDBParam->addParam( "DBの種類", 'db_type', INT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'), $db_type);708 $objDBParam->addParam( "DBサーバー", 'db_server', MTEXT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'), $db_server);709 $objDBParam->addParam( "DBポート", 'db_port', INT_LEN, "", array('MAX_LENGTH_CHECK'), $db_port);710 $objDBParam->addParam( "DB名", 'db_name', MTEXT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'), $db_name);711 $objDBParam->addParam( "DBユーザ", 'db_user', MTEXT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'), $db_user);712 $objDBParam->addParam( "DBパスワード", 'db_password', MTEXT_LEN, "", array('EXIST_CHECK','MAX_LENGTH_CHECK'));697 $objDBParam->addParam('DBの種類', 'db_type', INT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), $db_type); 698 $objDBParam->addParam('DBサーバー', 'db_server', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), $db_server); 699 $objDBParam->addParam('DBポート', 'db_port', INT_LEN, '', array('MAX_LENGTH_CHECK'), $db_port); 700 $objDBParam->addParam('DB名', 'db_name', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), $db_name); 701 $objDBParam->addParam('DBユーザ', 'db_user', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), $db_user); 702 $objDBParam->addParam('DBパスワード', 'db_password', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK')); 713 703 714 704 return $objDBParam; … … 718 708 function lfCheckWebError($objFormParam) { 719 709 // 入力データを渡す。 720 $arrRet = 710 $arrRet = $objFormParam->getHashArray(); 721 711 $objErr = new SC_CheckError($arrRet); 722 712 $objErr->arrErr = $objFormParam->checkError(); 723 713 724 714 // ディレクトリ名のみ取得する 725 $normal_dir = ereg_replace( "^https?://[a-zA-Z0-9_~=&\?\.\-]+", "", $arrRet['normal_url']);726 $secure_dir = ereg_replace( "^https?://[a-zA-Z0-9_~=&\?\.\-]+", "", $arrRet['secure_url']);715 $normal_dir = ereg_replace('^https?://[a-zA-Z0-9_~=&\?\.\-]+', '', $arrRet['normal_url']); 716 $secure_dir = ereg_replace('^https?://[a-zA-Z0-9_~=&\?\.\-]+', '', $arrRet['secure_url']); 727 717 728 718 if ($normal_dir != $secure_dir) { 729 $objErr->arrErr['normal_url'] = "※ URLに異なる階層を指定することはできません。";730 $objErr->arrErr['secure_url'] = "※ URLに異なる階層を指定することはできません。";719 $objErr->arrErr['normal_url'] = '※ URLに異なる階層を指定することはできません。'; 720 $objErr->arrErr['secure_url'] = '※ URLに異なる階層を指定することはできません。'; 731 721 } 732 722 733 723 // ログインIDチェック 734 $objErr->doFunc(array( "管理者:ログインID",'login_id',ID_MIN_LEN , ID_MAX_LEN) ,array('SPTAB_CHECK' ,'NUM_RANGE_CHECK'));724 $objErr->doFunc(array('管理者:ログインID', 'login_id', ID_MIN_LEN, ID_MAX_LEN), array('SPTAB_CHECK', 'NUM_RANGE_CHECK')); 735 725 736 726 // パスワードのチェック 737 $objErr->doFunc( array( "管理者:パスワード",'login_pass',ID_MIN_LEN , ID_MAX_LEN) ,array('SPTAB_CHECK' ,'NUM_RANGE_CHECK'));727 $objErr->doFunc( array('管理者:パスワード', 'login_pass', ID_MIN_LEN, ID_MAX_LEN), array('SPTAB_CHECK', 'NUM_RANGE_CHECK')); 738 728 739 729 // 管理機能ディレクトリのチェック 740 $objErr->doFunc( array( "管理機能:ディレクトリ", 'admin_dir', ID_MIN_LEN, ID_MAX_LEN), array('SPTAB_CHECK' ,'NUM_RANGE_CHECK'));730 $objErr->doFunc( array('管理機能:ディレクトリ', 'admin_dir', ID_MIN_LEN, ID_MAX_LEN), array('SPTAB_CHECK', 'NUM_RANGE_CHECK')); 741 731 742 732 $oldAdminDir = SC_Utils_Ex::sfTrimURL(ADMIN_DIR); 743 733 $newAdminDir = $objFormParam->getValue('admin_dir'); 744 734 if ($oldAdminDir !== $newAdminDir AND file_exists(HTML_REALDIR . $newAdminDir) and $newAdminDir != 'admin') { 745 $objErr->arrErr['admin_dir'] = "※ 指定した管理機能ディレクトリは既に存在しています。別の名前を指定してください。";735 $objErr->arrErr['admin_dir'] = '※ 指定した管理機能ディレクトリは既に存在しています。別の名前を指定してください。'; 746 736 } 747 737 … … 754 744 755 745 // 入力データを渡す。 756 $arrRet = 746 $arrRet = $objFormParam->getHashArray(); 757 747 758 748 $objErr = new SC_CheckError($arrRet); … … 764 754 } 765 755 // 接続確認 766 $dsn = $arrRet['db_type'] ."://".$arrRet['db_user'].":".$arrRet['db_password']."@".$arrRet['db_server'].":".$arrRet['db_port']."/".$arrRet['db_name'];756 $dsn = $arrRet['db_type'] . '://' . $arrRet['db_user'] . ':' . $arrRet['db_password'] . '@' . $arrRet['db_server'] . ':' . $arrRet['db_port'] . '/' . $arrRet['db_name']; 767 757 // Debugモード指定 768 758 $options['debug'] = PEAR_DB_DEBUG; … … 774 764 $objPage->tpl_db_version = $dbFactory->sfGetDBVersion($dsn); 775 765 } else { 776 $objErr->arrErr['all'] = ">> " . $objDB->message . "<br />";766 $objErr->arrErr['all'] = '>> ' . $objDB->message . '<br />'; 777 767 // エラー文を取得する 778 ereg( "\[(.*)\]", $objDB->userinfo, $arrKey);779 $objErr->arrErr['all'] .= $arrKey[0] . "<br />";768 ereg('\[(.*)\]', $objDB->userinfo, $arrKey); 769 $objErr->arrErr['all'] .= $arrKey[0] . '<br />'; 780 770 GC_Utils_Ex::gfPrintLog($objDB->userinfo, INSTALL_LOG); 781 771 } … … 789 779 790 780 if (!file_exists($filepath)) { 791 $arrErr['all'] = ">> スクリプトファイルが見つかりません";792 } else { 793 if ($fp = fopen($filepath, 'r')) {781 $arrErr['all'] = '>> スクリプトファイルが見つかりません'; 782 } else { 783 if ($fp = fopen($filepath, 'r')) { 794 784 $sql = fread($fp, filesize($filepath)); 795 785 fclose($fp); … … 801 791 if (!PEAR::isError($objDB)) { 802 792 $objDB->setCharset('utf8'); 803 $sql_split = split( ";",$sql);793 $sql_split = split(';', $sql); 804 794 foreach ($sql_split as $key => $val) { 805 795 SC_Utils::sfFlush(true); 806 if (trim($val) != "") {796 if (trim($val) != '') { 807 797 $ret = $objDB->query($val); 808 798 if (PEAR::isError($ret) && $disp_err) { 809 $arrErr['all'] = ">> " . $ret->message . "<br />";799 $arrErr['all'] = '>> ' . $ret->message . '<br />'; 810 800 // エラー文を取得する 811 ereg( "\[(.*)\]", $ret->userinfo, $arrKey);812 $arrErr['all'] .= $arrKey[0] . "<br />";813 $objPage->update_mess .=">> テーブル構成の変更に失敗しました。<br />";801 ereg('\[(.*)\]', $ret->userinfo, $arrKey); 802 $arrErr['all'] .= $arrKey[0] . '<br />'; 803 $objPage->update_mess .= '>> テーブル構成の変更に失敗しました。<br />'; 814 804 GC_Utils_Ex::gfPrintLog($ret->userinfo, INSTALL_LOG); 815 805 break; 816 806 } else { 817 GC_Utils_Ex::gfPrintLog( "OK:". $val, INSTALL_LOG);807 GC_Utils_Ex::gfPrintLog('OK:' . $val, INSTALL_LOG); 818 808 } 819 809 } 820 810 } 821 811 } else { 822 $arrErr['all'] = ">> ". $objDB->message;812 $arrErr['all'] = '>> ' . $objDB->message; 823 813 GC_Utils_Ex::gfPrintLog($objDB->userinfo, INSTALL_LOG); 824 814 } … … 852 842 $result = $objManager->dropSequence($seq_name); 853 843 if (PEAR::isError($result)) { 854 $arrErr['all'] = ">> " . $result->message . "<br />";844 $arrErr['all'] = '>> ' . $result->message . '<br />'; 855 845 GC_Utils_Ex::gfPrintLog($result->userinfo, INSTALL_LOG); 856 846 } else { 857 GC_Utils_Ex::gfPrintLog( "OK:". $seq_name, INSTALL_LOG);847 GC_Utils_Ex::gfPrintLog('OK:' . $seq_name, INSTALL_LOG); 858 848 } 859 849 } 860 850 } 861 851 } else { 862 $arrErr['all'] = ">> ". $objDB->message;852 $arrErr['all'] = '>> ' . $objDB->message; 863 853 GC_Utils_Ex::gfPrintLog($objDB->userinfo, INSTALL_LOG); 864 854 } … … 887 877 foreach ($arrSequences as $seq) { 888 878 SC_Utils::sfFlush(true); 889 $res = $objDB->query( "SELECT max(" . $seq[1] . ") FROM ". $seq[0]);879 $res = $objDB->query('SELECT max(' . $seq[1] . ') FROM ' . $seq[0]); 890 880 if (PEAR::isError($res)) { 891 $arrErr['all'] = ">> " . $res->userinfo . "<br />";881 $arrErr['all'] = '>> ' . $res->userinfo . '<br />'; 892 882 GC_Utils_Ex::gfPrintLog($res->userinfo, INSTALL_LOG); 893 883 return $arrErr; … … 898 888 $result = $objManager->createSequence($seq_name, $max + 1); 899 889 if (PEAR::isError($result)) { 900 $arrErr['all'] = ">> " . $result->message . "<br />";890 $arrErr['all'] = '>> ' . $result->message . '<br />'; 901 891 GC_Utils_Ex::gfPrintLog($result->userinfo, INSTALL_LOG); 902 892 } else { 903 GC_Utils_Ex::gfPrintLog( "OK:". $seq_name, INSTALL_LOG);904 } 905 } 906 } else { 907 $arrErr['all'] = ">> ". $objDB->message;893 GC_Utils_Ex::gfPrintLog('OK:' . $seq_name, INSTALL_LOG); 894 } 895 } 896 } else { 897 $arrErr['all'] = '>> ' . $objDB->message; 908 898 GC_Utils_Ex::gfPrintLog($objDB->userinfo, INSTALL_LOG); 909 899 } … … 918 908 $normal_url = $objWebParam->getValue('normal_url'); 919 909 // 語尾に'/'をつける 920 if (!ereg( "/$", $normal_url)) {921 $normal_url = $normal_url . "/";910 if (!ereg('/$', $normal_url)) { 911 $normal_url = $normal_url . '/'; 922 912 } 923 913 924 914 $secure_url = $objWebParam->getValue('secure_url'); 925 915 // 語尾に'/'をつける 926 if (!ereg( "/$", $secure_url)) {927 $secure_url = $secure_url . "/";916 if (!ereg('/$', $secure_url)) { 917 $secure_url = $secure_url . '/'; 928 918 } 929 919 930 920 // ディレクトリの取得 931 $url_dir = ereg_replace( "^https?://[a-zA-Z0-9_:~=&\?\.\-]+", "", $normal_url);921 $url_dir = ereg_replace('^https?://[a-zA-Z0-9_:~=&\?\.\-]+', '', $normal_url); 932 922 933 923 //管理機能SSL制限 934 if ($objWebParam->getValue('admin_force_ssl') == 1 and strpos($secure_url, "https://") !== FALSE) {924 if ($objWebParam->getValue('admin_force_ssl') == 1 and strpos($secure_url, 'https://') !== FALSE) { 935 925 $force_ssl = 'TRUE'; 936 926 } else { … … 941 931 $hosts = $objWebParam->getValue('admin_allow_hosts'); 942 932 if (!empty($hosts)) { 943 $hosts = str_replace("\r", "",$hosts);944 if (strpos($hosts, "\n") === false) {933 $hosts = str_replace("\r", '', $hosts); 934 if (strpos($hosts, "\n") === false) { 945 935 $hosts .= "\n"; 946 936 } 947 $hosts = explode("\n", $hosts);948 foreach ($hosts as $key =>$host) {937 $hosts = explode("\n", $hosts); 938 foreach ($hosts as $key => $host) { 949 939 $host = trim($host); 950 940 if (strlen($host) >= 8) { … … 972 962 } 973 963 974 $config_data = 975 "<?php\n". 976 " define ('ECCUBE_INSTALL', 'ON');\n" . 977 " define ('HTTP_URL', '" . $normal_url . "');\n" . 978 " define ('HTTPS_URL', '" . $secure_url . "');\n" . 979 " define ('ROOT_URLPATH', '" . $url_dir . "');\n" . 980 " define ('DOMAIN_NAME', '" . $objWebParam->getValue('domain') . "');\n" . 981 " define ('DB_TYPE', '" . $objDBParam->getValue('db_type') . "');\n" . 982 " define ('DB_USER', '" . $objDBParam->getValue('db_user') . "');\n" . 983 " define ('DB_PASSWORD', '" . $objDBParam->getValue('db_password') . "');\n" . 984 " define ('DB_SERVER', '" . $objDBParam->getValue('db_server') . "');\n" . 985 " define ('DB_NAME', '" . $objDBParam->getValue('db_name') . "');\n" . 986 " define ('DB_PORT', '" . $objDBParam->getValue('db_port') . "');\n" . 987 " define ('ADMIN_DIR', '" . $objWebParam->getValue('admin_dir') . "/');\n" . 988 " define ('ADMIN_FORCE_SSL', " . $force_ssl . ");\n". 989 " define ('ADMIN_ALLOW_HOSTS', '".serialize($allow_hosts)."');\n". 990 " define ('AUTH_MAGIC', '" . $auth_magic . "');\n". 991 " define ('PASSWORD_HASH_ALGOS', '" . $algos . "');\n". 992 " define ('RELEASE_YEAR', '" . date('Y') . "');\n". 993 "?>"; 964 // FIXME 変数出力はエスケープすべき 965 $config_data = "<?php\n" 966 . "define ('ECCUBE_INSTALL', 'ON');\n" 967 . "define ('HTTP_URL', '" . $normal_url . "');\n" 968 . "define ('HTTPS_URL', '" . $secure_url . "');\n" 969 . "define ('ROOT_URLPATH', '" . $url_dir . "');\n" 970 . "define ('DOMAIN_NAME', '" . $objWebParam->getValue('domain') . "');\n" 971 . "define ('DB_TYPE', '" . $objDBParam->getValue('db_type') . "');\n" 972 . "define ('DB_USER', '" . $objDBParam->getValue('db_user') . "');\n" 973 . "define ('DB_PASSWORD', '" . $objDBParam->getValue('db_password') . "');\n" 974 . "define ('DB_SERVER', '" . $objDBParam->getValue('db_server') . "');\n" 975 . "define ('DB_NAME', '" . $objDBParam->getValue('db_name') . "');\n" 976 . "define ('DB_PORT', '" . $objDBParam->getValue('db_port') . "');\n" 977 . "define ('ADMIN_DIR', '" . $objWebParam->getValue('admin_dir') . "/');\n" 978 . "define ('ADMIN_FORCE_SSL', " . $force_ssl . ");\n" 979 . "define ('ADMIN_ALLOW_HOSTS', '" . serialize($allow_hosts) . "');\n" 980 . "define ('AUTH_MAGIC', '" . $auth_magic . "');\n" 981 . "define ('PASSWORD_HASH_ALGOS', '" . $algos . "');\n" 982 . "define ('RELEASE_YEAR', '" . date('Y') . "');\n"; 994 983 995 984 if ($fp = fopen(CONFIG_REALFILE, 'w')) { … … 1033 1022 */ 1034 1023 function getSequences() { 1035 return array(array('dtb_best_products','best_id'), 1036 array('dtb_bloc', 'bloc_id'), 1037 array('dtb_category', 'category_id'), 1038 array('dtb_class', 'class_id'), 1039 array('dtb_classcategory', 'classcategory_id'), 1040 array('dtb_csv', 'no'), 1041 array('dtb_csv_sql', 'sql_id'), 1042 array('dtb_customer', 'customer_id'), 1043 array('dtb_deliv', 'deliv_id'), 1044 array('dtb_holiday', 'holiday_id'), 1045 array('dtb_kiyaku', 'kiyaku_id'), 1046 array('dtb_mail_history', 'send_id'), 1047 array('dtb_maker', 'maker_id'), 1048 array('dtb_member', 'member_id'), 1049 array('dtb_module_update_logs', 'log_id'), 1050 array('dtb_news', 'news_id'), 1051 array('dtb_order', 'order_id'), 1052 array('dtb_order_detail', 'order_detail_id'), 1053 array('dtb_other_deliv', 'other_deliv_id'), 1054 array('dtb_pagelayout', 'page_id'), 1055 array('dtb_payment', 'payment_id'), 1056 array('dtb_products_class', 'product_class_id'), 1057 array('dtb_products', 'product_id'), 1058 array('dtb_class_combination', 'class_combination_id'), 1059 array('dtb_review', 'review_id'), 1060 array('dtb_send_history', 'send_id'), 1061 array('dtb_mailmaga_template', 'template_id'), 1062 array("dtb_plugin", "plugin_id"), 1063 array("dtb_plugin_hookpoint", "id")); 1024 return array( 1025 array('dtb_best_products', 'best_id'), 1026 array('dtb_bloc', 'bloc_id'), 1027 array('dtb_category', 'category_id'), 1028 array('dtb_class', 'class_id'), 1029 array('dtb_classcategory', 'classcategory_id'), 1030 array('dtb_csv', 'no'), 1031 array('dtb_csv_sql', 'sql_id'), 1032 array('dtb_customer', 'customer_id'), 1033 array('dtb_deliv', 'deliv_id'), 1034 array('dtb_holiday', 'holiday_id'), 1035 array('dtb_kiyaku', 'kiyaku_id'), 1036 array('dtb_mail_history', 'send_id'), 1037 array('dtb_maker', 'maker_id'), 1038 array('dtb_member', 'member_id'), 1039 array('dtb_module_update_logs', 'log_id'), 1040 array('dtb_news', 'news_id'), 1041 array('dtb_order', 'order_id'), 1042 array('dtb_order_detail', 'order_detail_id'), 1043 array('dtb_other_deliv', 'other_deliv_id'), 1044 array('dtb_pagelayout', 'page_id'), 1045 array('dtb_payment', 'payment_id'), 1046 array('dtb_products_class', 'product_class_id'), 1047 array('dtb_products', 'product_id'), 1048 array('dtb_class_combination', 'class_combination_id'), 1049 array('dtb_review', 'review_id'), 1050 array('dtb_send_history', 'send_id'), 1051 array('dtb_mailmaga_template', 'template_id'), 1052 array('dtb_plugin', 'plugin_id'), 1053 array('dtb_plugin_hookpoint', 'id'), 1054 ); 1064 1055 } 1065 1056
Note: See TracChangeset
for help on using the changeset viewer.