Ignore:
Timestamp:
2007/07/20 15:58:59 (17 years ago)
Author:
nanasess
Message:

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Location:
branches/feature-module-update
Files:
1 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update

    • Property svn:ignore set to
      .cache

      .settings

      .projectOptions
  • branches/feature-module-update/html/admin/system/bkup.php

    r12157 r15078  
    88require_once(DATA_PATH. "module/Tar.php"); 
    99 
    10 //¥Ú¡¼¥¸´ÉÍý¥¯¥é¥¹ 
     10//ページ管理クラス 
    1111class LC_Page { 
    12     //¥³¥ó¥¹¥È¥é¥¯¥¿ 
     12    //コンストラクタ 
    1313    function LC_Page() { 
    14         //¥á¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤Î»ØÄê 
     14        //メインテンプレートの指定 
    1515        $this->tpl_mainpage = 'system/bkup.tpl'; 
    1616        $this->tpl_subnavi = 'system/subnavi.tpl'; 
    1717        $this->tpl_mainno = 'system';        
    1818        $this->tpl_subno = 'bkup'; 
    19         $this->tpl_subtitle = '¥Ð¥Ã¥¯¥¢¥Ã¥×´ÉÍý'; 
     19        $this->tpl_subtitle = 'バックアップ管理'; 
    2020         
    2121        $this->bkup_dir = USER_PATH . "bkup/"; 
     
    2727$objQuery = new SC_Query(); 
    2828 
    29 // ¥»¥Ã¥·¥ç¥ó¥¯¥é¥¹ 
     29// セッションクラス 
    3030$objSess = new SC_Session(); 
    31 // ǧ¾Ú²ÄÈݤÎȽÄê 
     31// 認証可否の判定 
    3232sfIsSuccess($objSess); 
    3333 
    34 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Æ¡¼¥Ö¥ë¤¬¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë 
     34// バックアップテーブルがなければ作成する 
    3535lfCreateBkupTable(); 
    3636 
    3737switch($_POST['mode']) { 
    38 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¤òºîÀ®¤¹¤ë 
     38// バックアップを作成する 
    3939case 'bkup': 
    40     // ÆþÎÏʸ»úÎó¤ÎÊÑ´¹ 
     40    // 入力文字列の変換 
    4141    $arrData = lfConvertParam($_POST); 
    4242 
    43     // ¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     43    // エラーチェック 
    4444    $arrErr = lfCheckError($arrData); 
    4545 
    46     // ¥¨¥é¡¼¤¬¤Ê¤±¤ì¤Ð¥Ð¥Ã¥¯¥¢¥Ã¥×½èÍý¤ò¹Ô¤¦    
     46    // エラーがなければバックアップ処理を行う   
    4747    if (count($arrErr) <= 0) { 
    48         // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ëºîÀ® 
     48        // バックアップファイル作成 
    4949        $arrErr = lfCreateBkupData($arrData['bkup_name']); 
    5050         
    51         // DB¤Ë¥Ç¡¼¥¿¹¹¿· 
     51        // DBにデータ更新 
    5252        if (count($arrErr) <= 0) { 
    5353            lfUpdBkupData($arrData); 
     
    5656        } 
    5757         
    58         $objPage->tpl_onload = "alert('¥Ð¥Ã¥¯¥¢¥Ã¥×´°Î»¤·¤Þ¤·¤¿');"; 
     58        $objPage->tpl_onload = "alert('バックアップ完了しました');"; 
    5959    }else{ 
    6060        $arrForm = $arrData; 
     
    6363    break; 
    6464     
    65 // ¥ê¥¹¥È¥¢ 
     65// リストア 
    6666case 'restore': 
    6767case 'restore_config': 
     
    7474    break; 
    7575     
    76 // ºï½ü 
     76// 削除 
    7777case 'delete': 
    7878    $del_file = $objPage->bkup_dir.$_POST['list_name'] . ".tar.gz"; 
    79     // ¥Õ¥¡¥¤¥ë¤Îºï½ü 
     79    // ファイルの削除 
    8080    if(is_file($del_file)){ 
    8181        $ret = unlink($del_file); 
    8282    } 
    8383 
    84     // DB¤«¤éºï½ü 
     84    // DBから削除 
    8585    $delsql = "DELETE FROM dtb_bkup WHERE bkup_name = ?"; 
    8686    $objQuery->query($delsql, array($_POST['list_name'])); 
     
    8888    break; 
    8989     
    90 // ¥À¥¦¥ó¥í¡¼¥É 
     90// ダウンロード 
    9191case 'download' : 
    9292    $filename = $_POST['list_name'] . ".tar.gz"; 
    9393    $dl_file = $objPage->bkup_dir.$_POST['list_name'] . ".tar.gz"; 
    9494     
    95     // ¥À¥¦¥ó¥í¡¼¥É³«»Ï 
     95    // ダウンロード開始 
    9696    Header("Content-disposition: attachment; filename=${filename}"); 
    9797    Header("Content-type: application/octet-stream; name=${filename}"); 
     
    105105} 
    106106 
    107 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ë 
     107// バックアップリストを取得する 
    108108$arrBkupList = lfGetBkupData("ORDER BY create_date DESC"); 
    109 // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ËÅϤ¹¥Ç¡¼¥¿¤ò¥»¥Ã¥È 
     109// テンプレートファイルに渡すデータをセット 
    110110$objPage->arrErr = $arrErr; 
    111111$objPage->arrForm = $arrForm; 
    112112$objPage->arrBkupList = $arrBkupList; 
    113113 
    114 $objView->assignobj($objPage);      //ÊÑ¿ô¤ò¥Æ¥ó¥×¥ì¡¼¥È¤Ë¥¢¥µ¥¤¥ó¤¹¤ë 
    115 $objView->display(MAIN_FRAME);      //¥Æ¥ó¥×¥ì¡¼¥È¤Î½ÐÎÏ 
     114$objView->assignobj($objPage);      //変数をテンプレートにアサインする 
     115$objView->display(MAIN_FRAME);      //テンプレートの出力 
    116116 
    117117//------------------------------------------------------------------------------------------------------- 
    118 /* ¼èÆÀʸ»úÎó¤ÎÊÑ´¹ */ 
     118/* 取得文字列の変換 */ 
    119119function lfConvertParam($array) { 
    120120    /* 
    121      *  ʸ»úÎó¤ÎÊÑ´¹ 
    122      *  K :  ¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)ÊÒ²¾Ì¾¡×¤ò¡ÖÁ´³ÑÊÒ²¾Ì¾¡×¤ËÊÑ´¹ 
    123      *  C :  ¡ÖÁ´³Ñ¤Ò¤é²¾Ì¾¡×¤ò¡ÖÁ´³Ñ¤«¤¿²¾Ì¾¡×¤ËÊÑ´¹ 
    124      *  V :  ÂùÅÀÉÕ¤­¤Îʸ»ú¤ò°ìʸ»ú¤ËÊÑ´¹¡£"K","H"¤È¶¦¤Ë»ÈÍѤ·¤Þ¤¹   
    125      *  n :  ¡ÖÁ´³Ñ¡×¿ô»ú¤ò¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)¡×¤ËÊÑ´¹ 
    126      *  a :  Á´³Ñ±Ñ¿ô»ú¤òȾ³Ñ±Ñ¿ô»ú¤ËÊÑ´¹¤¹¤ë 
     121     *  文字列の変換 
     122     *  K :  「半角(ハンカク)片仮名」を「全角片仮名」に変換 
     123     *  C :  「全角ひら仮名」を「全角かた仮名」に変換 
     124     *  V :  濁点付きの文字を一文字に変換。"K","H"と共に使用します  
     125     *  n :  「全角」数字を「半角(ハンカク)」に変換 
     126     *  a :  全角英数字を半角英数字に変換する 
    127127     */ 
    128128    $arrConvList['bkup_name'] = "a"; 
    129129    $arrConvList['bkup_memo'] = "KVa"; 
    130130     
    131     // ʸ»úÊÑ´¹ 
     131    // 文字変換 
    132132    foreach ($arrConvList as $key => $val) { 
    133         // POST¤µ¤ì¤Æ¤­¤¿ÃͤΤßÊÑ´¹¤¹¤ë¡£ 
     133        // POSTされてきた値のみ変換する。 
    134134        if(isset($array[$key])) { 
    135135            $array[$key] = mb_convert_kana($array[$key] ,$val); 
     
    139139} 
    140140 
    141 // ¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     141// エラーチェック 
    142142function lfCheckError($array){ 
    143143    $objErr = new SC_CheckError($array); 
    144144     
    145     $objErr->doFunc(array("¥Ð¥Ã¥¯¥¢¥Ã¥×̾", "bkup_name", STEXT_LEN), array("EXIST_CHECK","MAX_LENGTH_CHECK","NO_SPTAB","ALNUM_CHECK")); 
    146     $objErr->doFunc(array("¥Ð¥Ã¥¯¥¢¥Ã¥×¥á¥â", "bkup_memo", MTEXT_LEN), array("MAX_LENGTH_CHECK")); 
    147      
    148     // ½ÅÊ£¥Á¥§¥Ã¥¯ 
     145    $objErr->doFunc(array("バックアップ名", "bkup_name", STEXT_LEN), array("EXIST_CHECK","MAX_LENGTH_CHECK","NO_SPTAB","ALNUM_CHECK")); 
     146    $objErr->doFunc(array("バックアップメモ", "bkup_memo", MTEXT_LEN), array("MAX_LENGTH_CHECK")); 
     147     
     148    // 重複チェック 
    149149    $ret = lfGetBkupData("WHERE bkup_name = ?", array($array['bkup_name'])); 
    150150    if (count($ret) > 0) { 
    151         $objErr->arrErr['bkup_name'] = "¥Ð¥Ã¥¯¥¢¥Ã¥×̾¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£ÊÌ̾¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£"; 
     151        $objErr->arrErr['bkup_name'] = "バックアップ名が重複しています。別名を入力してください。"; 
    152152    } 
    153153 
     
    155155} 
    156156 
    157 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ëºîÀ® 
     157// バックアップファイル作成 
    158158function lfCreateBkupData($bkup_name){ 
    159159    global $objPage; 
     
    167167    $bkup_dir = $bkup_dir . $bkup_name . "/"; 
    168168 
    169     // Á´¥Æ¡¼¥Ö¥ë¼èÆÀ 
     169    // 全テーブル取得 
    170170    $arrTableList = lfGetTableList(); 
    171171     
    172     // ³Æ¥Æ¡¼¥Ö¥ë¾ðÊó¤ò¼èÆÀ¤¹¤ë 
     172    // 各テーブル情報を取得する 
    173173    foreach($arrTableList as $key => $val){ 
    174174         
    175175        if ($val != "dtb_bkup") { 
    176176             
    177             // ¼«Æ°ºÎÈÖ·¿¤Î¹½À®¤ò¼èÆÀ¤¹¤ë 
     177            // 自動採番型の構成を取得する 
    178178            $csv_autoinc .= lfGetAutoIncrement($val); 
    179179             
    180             // Á´¥Ç¡¼¥¿¤ò¼èÆÀ 
     180            // 全データを取得 
    181181            if ($val == "dtb_pagelayout"){ 
    182182                $arrData = $objQuery->getAll("SELECT * FROM $val ORDER BY page_id"); 
     
    185185            } 
    186186             
    187             // CSV¥Ç¡¼¥¿À¸À® 
     187            // CSVデータ生成 
    188188            if (count($arrData) > 0) { 
    189189                 
    190                 // ¥«¥é¥à¤òCSV·Á¼°¤ËÀ°¤¨¤ë 
     190                // カラムをCSV形式に整える 
    191191                $arrKyes = sfGetCommaList(array_keys($arrData[0]), false); 
    192192                 
    193                 // ¥Ç¡¼¥¿¤òCSV·Á¼°¤ËÀ°¤¨¤ë 
     193                // データをCSV形式に整える 
    194194                $data = ""; 
    195195                foreach($arrData as $data_key => $data_val){ 
     
    198198 
    199199                } 
    200                 // CSV½ÐÎϥǡ¼¥¿À¸À® 
     200                // CSV出力データ生成 
    201201                $csv_data .= $val . "\n"; 
    202202                $csv_data .= $arrKyes . "\n"; 
     
    205205            }    
    206206             
    207             // ¥¿¥¤¥à¥¢¥¦¥È¤òËɤ° 
     207            // タイムアウトを防ぐ 
    208208            sfFlush(); 
    209209        } 
     
    213213    $csv_autoinc_file = $bkup_dir . "autoinc_data.csv"; 
    214214    mb_internal_encoding(CHAR_CODE); 
    215     // CSV½ÐÎÏ 
    216     // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë      
     215    // CSV出力 
     216    // ディレクトリが存在していなければ作成する      
    217217    if (!is_dir(dirname($csv_file))) { 
    218218        $err = mkdir(dirname($csv_file)); 
    219219    } 
    220220    if ($err) { 
    221         // data¤òCSV½ÐÎÏ 
     221        // dataをCSV出力 
    222222        $fp = fopen($csv_file,"w"); 
    223223        if($fp) { 
     
    228228        } 
    229229         
    230         // ¼«Æ°ºÎÈÖ¤òCSV½ÐÎÏ 
     230        // 自動採番をCSV出力 
    231231        $fp = fopen($csv_autoinc_file,"w"); 
    232232        if($fp) { 
     
    238238    } 
    239239 
    240     // ³Æ¼ï¥Õ¥¡¥¤¥ë¥³¥Ô¡¼ 
     240    // 各種ファイルコピー 
    241241    if ($err) { 
    242         // ¾¦ÉʲèÁü¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼ 
    243         // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë      
     242        // 商品画像ファイルをコピー 
     243        // ディレクトリが存在していなければ作成する      
    244244        $image_dir = $bkup_dir . "save_image/"; 
    245245        if (!is_dir(dirname($image_dir))) $err = mkdir(dirname($image_dir));         
     
    247247        $copy_mess = sfCopyDir("../../upload/save_image/",$image_dir, $copy_mess); 
    248248         
    249         // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼ 
    250         // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë      
     249        // テンプレートファイルをコピー 
     250        // ディレクトリが存在していなければ作成する      
    251251        $templates_dir = $bkup_dir . "templates/"; 
    252252        if (!is_dir(dirname($templates_dir))) $err = mkdir(dirname($templates_dir));         
     
    254254        $copy_mess = sfCopyDir("../../user_data/templates/",$templates_dir, $copy_mess); 
    255255         
    256         // ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼ 
    257         // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë      
     256        // インクルードファイルをコピー 
     257        // ディレクトリが存在していなければ作成する      
    258258        $inc_dir = $bkup_dir . "include/"; 
    259259        if (!is_dir(dirname($inc_dir))) $err = mkdir(dirname($inc_dir));         
     
    261261        $copy_mess = sfCopyDir("../../user_data/include/",$inc_dir, $copy_mess); 
    262262     
    263         // CSS¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼ 
    264         // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë      
     263        // CSSファイルをコピー 
     264        // ディレクトリが存在していなければ作成する      
    265265        $css_dir = $bkup_dir . "css/"; 
    266266        if (!is_dir(dirname($css_dir))) $err = mkdir(dirname($css_dir));         
     
    268268        $copy_mess = sfCopyDir("../../user_data/css/",$css_dir, $copy_mess); 
    269269 
    270         //°µ½Ì¥Õ¥é¥°TRUE¤Ïgzip°µ½Ì¤ò¤ª¤³¤Ê¤¦ 
     270        //圧縮フラグTRUEはgzip圧縮をおこなう 
    271271        $tar = new Archive_Tar($objPage->bkup_dir . $bkup_name.".tar.gz", TRUE); 
    272272 
    273         //bkup¥Õ¥©¥ë¥À¤Ë°ÜÆ°¤¹¤ë 
     273        //bkupフォルダに移動する 
    274274        chdir($objPage->bkup_dir); 
    275275 
    276         //°µ½Ì¤ò¤ª¤³¤Ê¤¦ 
     276        //圧縮をおこなう 
    277277        $zip = $tar->create("./" . $bkup_name . "/"); 
    278278 
    279         // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Ç¡¼¥¿¤Îºï½ü 
     279        // バックアップデータの削除 
    280280        if ($zip) sfDelFile($bkup_dir); 
    281281    } 
    282282 
    283283    if (!$err) { 
    284         $arrErr['bkup_name'] = "¥Ð¥Ã¥¯¥¢¥Ã¥×¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"; 
    285         // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Ç¡¼¥¿¤Îºï½ü 
     284        $arrErr['bkup_name'] = "バックアップに失敗しました。"; 
     285        // バックアップデータの削除 
    286286        sfDelFile($bkup_dir); 
    287287    } 
     
    290290} 
    291291 
    292 /* ÇÛÎó¤ÎÍ×ÁǤòCSV¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç½ÐÎϤ¹¤ë¡£*/ 
     292/* 配列の要素をCSVフォーマットで出力する。*/ 
    293293function lfGetCSVList($array) { 
    294294    if (count($array) > 0) { 
     
    305305} 
    306306 
    307 // Á´¥Æ¡¼¥Ö¥ë¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ë 
     307// 全テーブルリストを取得する 
    308308function lfGetTableList(){ 
    309309    $objQuery = new SC_Query(); 
     
    319319        $arrRet = sfSwapArray($arrRet); 
    320320         
    321         // ¥­¡¼¤ò¼èÆÀ 
     321        // キーを取得 
    322322        $arrKey = array_keys($arrRet); 
    323323         
     
    327327} 
    328328 
    329 // ¼«Æ°ºÎÈÖ·¿¤òCSV½ÐÎÏ·Á¼°¤ËÊÑ´¹¤¹¤ë 
     329// 自動採番型をCSV出力形式に変換する 
    330330function lfGetAutoIncrement($table_name){ 
    331331    $arrColList = lfGetColumnList($table_name); 
     
    350350} 
    351351 
    352 // ¥Æ¡¼¥Ö¥ë¹½À®¤ò¼èÆÀ¤¹¤ë 
     352// テーブル構成を取得する 
    353353function lfGetColumnList($table_name){ 
    354354    $objQuery = new SC_Query(); 
     
    380380} 
    381381 
    382 // ¼«Æ°ºÎÈÖ·¿¤ÎÃͤò¼èÆÀ¤¹¤ë 
     382// 自動採番型の値を取得する 
    383383function lfGetAutoIncrementVal($table_name , $colname = ""){ 
    384384    $objQuery = new SC_Query(); 
     
    395395} 
    396396 
    397 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Æ¡¼¥Ö¥ë¤Ë¥Ç¡¼¥¿¤ò¹¹¿·¤¹¤ë 
     397// バックアップテーブルにデータを更新する 
    398398function lfUpdBkupData($data){ 
    399399    $objQuery = new SC_Query(); 
     
    403403} 
    404404 
    405 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Æ¡¼¥Ö¥ë¤«¤é¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë 
     405// バックアップテーブルからデータを取得する 
    406406function lfGetBkupData($where = "", $data = array()){ 
    407407    $objQuery = new SC_Query(); 
     
    415415} 
    416416 
    417 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ë¤ò¥ê¥¹¥È¥¢¤¹¤ë 
     417// バックアップファイルをリストアする 
    418418function lfRestore($bkup_name){ 
    419419    global $objPage; 
     
    424424    $bkup_dir = $objPage->bkup_dir . $bkup_name . "/"; 
    425425     
    426     //¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥©¥ë¥À¤Ë°ÜÆ°¤¹¤ë 
     426    //バックアップフォルダに移動する 
    427427    chdir($objPage->bkup_dir); 
    428428     
    429     //°µ½Ì¥Õ¥é¥°TRUE¤Ïgzip²òÅà¤ò¤ª¤³¤Ê¤¦ 
     429    //圧縮フラグTRUEはgzip解凍をおこなう 
    430430    $tar = new Archive_Tar($bkup_name . ".tar.gz", TRUE); 
    431431     
    432     //»ØÄꤵ¤ì¤¿¥Õ¥©¥ë¥ÀÆâ¤Ë²òÅह¤ë 
     432    //指定されたフォルダ内に解凍する 
    433433    $err = $tar->extract("./"); 
    434434     
    435     // ̵»ö²òÅà¤Ç¤­¤ì¤Ð¡¢¥ê¥¹¥È¥¢¤ò¹Ô¤¦ 
     435    // 無事解凍できれば、リストアを行う 
    436436    if ($err) { 
    437437         
    438         // ¥È¥é¥ó¥¶¥¯¥·¥ç¥ó³«»Ï 
     438        // トランザクション開始 
    439439        $objQuery->begin(); 
    440440         
    441         // DB¤ò¥¯¥ê¥¢ 
     441        // DBをクリア 
    442442        $err = lfDeleteAll($objQuery); 
    443443         
    444         // INSERT¼Â¹Ô 
     444        // INSERT実行 
    445445        if ($err) $err = lfExeInsertSQL($objQuery, $bkup_dir . "bkup_data.csv"); 
    446446 
    447         // ¼«Æ°ºÎÈÖ¤ÎÃͤò¥»¥Ã¥È 
     447        // 自動採番の値をセット 
    448448        if ($err) lfSetAutoInc($objQuery, $bkup_dir . "autoinc_data.csv"); 
    449449 
    450         // ³Æ¼ï¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼ 
     450        // 各種ファイルのコピー 
    451451        if ($err) { 
    452             // ²èÁü¤Î¥³¥Ô¡¼ 
     452            // 画像のコピー 
    453453            $image_dir = $bkup_dir . "save_image/"; 
    454454            $copy_mess = ""; 
    455455            $copy_mess = sfCopyDir($image_dir, "../../upload/save_image/", $copy_mess, true);        
    456456     
    457             // ¥Æ¥ó¥×¥ì¡¼¥È¤Î¥³¥Ô¡¼ 
     457            // テンプレートのコピー 
    458458            $tmp_dir = $bkup_dir . "templates/"; 
    459459            $copy_mess = ""; 
    460460            $copy_mess = sfCopyDir($tmp_dir, "../../user_data/templates/", $copy_mess, true);        
    461461             
    462             // ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼ 
     462            // インクルードファイルのコピー 
    463463            $inc_dir = $bkup_dir . "include/"; 
    464464            $copy_mess = ""; 
    465465            $copy_mess = sfCopyDir($inc_dir, "../../user_data/include/", $copy_mess, true);      
    466466             
    467             // CSS¤Î¥³¥Ô¡¼ 
     467            // CSSのコピー 
    468468            $css_dir = $bkup_dir . "css/"; 
    469469            $copy_mess = ""; 
    470470            $copy_mess = sfCopyDir($css_dir, "../../user_data/css/", $copy_mess, true);      
    471471 
    472             // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Ç¡¼¥¿¤Îºï½ü 
     472            // バックアップデータの削除 
    473473            sfDelFile($bkup_dir); 
    474474        } 
    475475 
    476         // ¥ê¥¹¥È¥¢À®¸ù¤Ê¤é¥³¥ß¥Ã¥È¼ºÇԤʤé¥í¡¼¥ë¥Ð¥Ã¥¯ 
     476        // リストア成功ならコミット失敗ならロールバック 
    477477        if ($err) { 
    478478            $objQuery->commit(); 
    479             $objPage->restore_msg = "¥ê¥¹¥È¥¢½ªÎ»¤·¤Þ¤·¤¿¡£"; 
     479            $objPage->restore_msg = "リストア終了しました。"; 
    480480            $objPage->restore_err = true; 
    481481        }else{ 
    482482            $objQuery->rollback(); 
    483             $objPage->restore_msg = "¥ê¥¹¥È¥¢¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"; 
     483            $objPage->restore_msg = "リストアに失敗しました。"; 
    484484            $objPage->restore_name = $bkup_name; 
    485485            $objPage->restore_err = false; 
     
    488488} 
    489489 
    490 // CSV¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥µ¡¼¥È¼Â¹Ô 
     490// CSVファイルからインサート実行 
    491491function lfExeInsertSQL($objQuery, $csv){ 
    492492    global $objPage; 
     
    500500    $mode = $objPage->mode; 
    501501     
    502     // csv¥Õ¥¡¥¤¥ë¤«¤é¥Ç¡¼¥¿¤Î¼èÆÀ 
     502    // csvファイルからデータの取得 
    503503    $fp = fopen($csv, "r"); 
    504504    while (!feof($fp)) { 
    505505        $data = fgetcsv($fp, 1000000); 
    506506                 
    507         //¶õÇò¹Ô¤Î¤È¤­¤Ï¥Æ¡¼¥Ö¥ëÊѹ¹ 
     507        //空白行のときはテーブル変更 
    508508        if (count($data) <= 1 and $data[0] == "") { 
    509509            $base_sql = ""; 
     
    513513        } 
    514514         
    515         // ¥Æ¡¼¥Ö¥ë¥Õ¥é¥°¤¬¤¿¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¥Æ¡¼¥Ö¥ë̾¥»¥Ã¥È 
     515        // テーブルフラグがたっていない場合にはテーブル名セット 
    516516        if (!$tbl_flg) { 
    517517            $base_sql = "INSERT INTO $data[0] "; 
     
    525525        } 
    526526         
    527         // ¥«¥é¥à¥Õ¥é¥°¤¬¤¿¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¥«¥é¥à¥»¥Ã¥È 
     527        // カラムフラグがたっていない場合にはカラムセット 
    528528        if (!$col_flg) { 
    529529            if ($mode != "restore_config"){ 
     
    538538        } 
    539539 
    540         // ¥¤¥ó¥µ¡¼¥È¤¹¤ëÃͤò¥»¥Ã¥È 
     540        // インサートする値をセット 
    541541        $sql = $base_sql . "VALUES ( ? "; 
    542542        for($i = 1; $i < count($data); $i++){ 
     
    547547        $err = $objQuery->query($sql, $data); 
    548548 
    549         // ¥¨¥é¡¼¤¬¤¢¤ì¤Ð½ªÎ» 
     549        // エラーがあれば終了 
    550550        if ($err->message != ""){ 
    551551            sfErrorHeader(">> " . $objQuery->getlastquery(false)); 
     
    554554         
    555555        if ($pagelayout_flg) { 
    556             // dtb_pagelayout¤Î¾ì¹ç¤Ë¤ÏºÇ½é¤Î¥Ç¡¼¥¿¤Ïpage_id = 0¤Ë¤¹¤ë 
     556            // dtb_pagelayoutの場合には最初のデータはpage_id = 0にする 
    557557            $sql = "UPDATE dtb_pagelayout SET page_id = '0'"; 
    558558            $objQuery->query($sql); 
     
    560560        } 
    561561 
    562         // ¥¿¥¤¥à¥¢¥¦¥È¤òËɤ° 
     562        // タイムアウトを防ぐ 
    563563        sfFlush(); 
    564564    } 
     
    568568} 
    569569 
    570 // ¼«Æ°ºÎÈÖ¤ò¥»¥Ã¥È 
     570// 自動採番をセット 
    571571function lfSetAutoInc($objQuery, $csv){ 
    572     // csv¥Õ¥¡¥¤¥ë¤«¤é¥Ç¡¼¥¿¤Î¼èÆÀ 
     572    // csvファイルからデータの取得 
    573573    $arrCsvData = file($csv); 
    574574 
     
    581581} 
    582582 
    583 // DB¤òÁ´¤Æ¥¯¥ê¥¢¤¹¤ë 
     583// DBを全てクリアする 
    584584function lfDeleteAll($objQuery){ 
    585585    $ret = true; 
     
    588588     
    589589    foreach($arrTableList as $key => $val){ 
    590         // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Æ¡¼¥Ö¥ë¤Ïºï½ü¤·¤Ê¤¤ 
     590        // バックアップテーブルは削除しない 
    591591        if ($val != "dtb_bkup") { 
    592592            $trun_sql = "DELETE FROM $val;"; 
     
    600600} 
    601601 
    602 // ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ë 
     602// バックアップテーブルを作成する 
    603603function lfCreateBkupTable(){ 
    604604    $objQuery = new SC_Query(); 
    605605     
    606     // ¥Æ¡¼¥Ö¥ë¤Î¸ºß¥Á¥§¥Ã¥¯ 
     606    // テーブルの存在チェック 
    607607    $arrTableList = lfGetTableList(); 
    608608 
    609609    if(!in_array("dtb_bkup", $arrTableList)){ 
    610         // ¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ® 
     610        // 存在していなければ作成 
    611611        $cre_sql = " 
    612612            create table dtb_bkup 
Note: See TracChangeset for help on using the changeset viewer.