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/products/upload_csv.php

    r14926 r15078  
    2525$objSess = new SC_Session(); 
    2626 
    27 // ǧ¾Ú²ÄÈݤÎȽÄê 
     27// 認証可否の判定 
    2828sfIsSuccess($objSess); 
    2929 
    30 // ¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹ 
     30// ファイル管理クラス 
    3131$objUpFile = new SC_UploadFile(IMAGE_TEMP_DIR, IMAGE_SAVE_DIR); 
    32 // ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ 
     32// ファイル情報の初期化 
    3333lfInitFile(); 
    34 // ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹ 
     34// パラメータ管理クラス 
    3535$objFormParam = new SC_FormParam(); 
    36 // ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
     36// パラメータ情報の初期化 
    3737lfInitParam(); 
    3838$colmax = $objFormParam->getCount(); 
     
    4343case 'csv_upload': 
    4444    $err = false; 
    45     // ¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     45    // エラーチェック 
    4646    $arrErr['csv_file'] = $objUpFile->makeTempFile('csv_file'); 
    4747     
     
    5050    } 
    5151 
    52     // ¼Â¹Ô»þ´Ö¤òÀ©¸Â¤·¤Ê¤¤ 
     52    // 実行時間を制限しない 
    5353    set_time_limit(0); 
    5454     
    55     // ½ÐÎϤò¥Ð¥Ã¥Õ¥¡¥ê¥ó¥°¤·¤Ê¤¤(==ÆüËܸ켫ưÊÑ´¹¤â¤·¤Ê¤¤) 
     55    // 出力をバッファリングしない(==日本語自動変換もしない) 
    5656    ob_end_clean(); 
    5757     
    58     // IE¤Î¤¿¤á¤Ë256¥Ð¥¤¥È¶õʸ»ú½ÐÎÏ 
     58    // IEのために256バイト空文字出力 
    5959    echo str_pad('',256); 
    6060         
    6161    if($arrErr['csv_file'] == "") { 
    62         // °ì»þ¥Õ¥¡¥¤¥ë̾¤Î¼èÆÀ 
     62        // 一時ファイル名の取得 
    6363        $filepath = $objUpFile->getTempFilePath('csv_file'); 
    64         // ¥¨¥ó¥³¡¼¥É 
     64        // エンコード 
    6565        $enc_filepath = sfEncodeFile($filepath, CHAR_CODE, CSV_TEMP_DIR); 
    6666         
    67         // ¥ì¥³¡¼¥É¿ô¤òÆÀ¤ë 
     67        // レコード数を得る 
    6868        $rec_count = lfCSVRecordCount($enc_filepath);        
    6969         
    7070        $fp = fopen($enc_filepath, "r"); 
    71         $line = 0;      // ¹Ô¿ô 
    72         $regist = 0;    // ÅÐÏ¿¿ô 
     71        $line = 0;      // 行数 
     72        $regist = 0;    // 登録数 
    7373         
    7474        $objQuery = new SC_Query(); 
    7575        $objQuery->begin(); 
    7676         
    77         echo "¢£¡¡CSVÅÐÏ¿¿ÊĽ¾õ¶· <br/><br/>\n";                 
     77        echo "■ CSV登録進捗状況 <br/><br/>\n";                 
    7878                 
    7979        while(!feof($fp) && !$err) { 
    8080            $arrCSV = fgetcsv($fp, CSV_LINE_MAX); 
    8181                         
    82             // ¹Ô¥«¥¦¥ó¥È 
     82            // 行カウント 
    8383            $line++; 
    8484             
     
    8787            }            
    8888                                 
    89             // ¹àÌÜ¿ô¥«¥¦¥ó¥È 
     89            // 項目数カウント 
    9090            $max = count($arrCSV); 
    9191             
    92             // ¹àÌÜ¿ô¤¬1°Ê²¼¤Î¾ì¹ç¤Ï̵»ë¤¹¤ë 
     92            // 項目数が1以下の場合は無視する 
    9393            if($max <= 1) { 
    9494                continue;            
    9595            } 
    9696             
    97             // ¹àÌÜ¿ô¥Á¥§¥Ã¥¯ 
     97            // 項目数チェック 
    9898            if($max != $colmax) { 
    99                 echo "¢¨ ¹àÌÜ¿ô¤¬" . $max . "¸Ä¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£¹àÌÜ¿ô¤Ï" . $colmax . "¸Ä¤Ë¤Ê¤ê¤Þ¤¹¡£</br>\n"; 
     99                echo "※ 項目数が" . $max . "個検出されました。項目数は" . $colmax . "個になります。</br>\n"; 
    100100                $err = true; 
    101101            } else { 
    102                 // ¥·¡¼¥±¥ó¥¹ÇÛÎó¤ò³ÊǼ¤¹¤ë¡£ 
     102                // シーケンス配列を格納する。 
    103103                $objFormParam->setParam($arrCSV, true); 
    104104                $arrRet = $objFormParam->getHashArray(); 
    105105                $objFormParam->setParam($arrRet); 
    106                 // ÆþÎÏÃͤÎÊÑ´¹ 
     106                // 入力値の変換 
    107107                $objFormParam->convParam(); 
    108                 // <br>¤Ê¤·¤Ç¥¨¥é¡¼¼èÆÀ¤¹¤ë¡£ 
     108                // <br>なしでエラー取得する。 
    109109                $arrCSVErr = lfCheckError(); 
    110110            } 
    111111             
    112             // ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     112            // 入力エラーチェック 
    113113            if(count($arrCSVErr) > 0) { 
    114                 echo "<font color=\"red\">¢£" . $line . "¹ÔÌܤǥ¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£</font></br>\n"; 
     114                echo "<font color=\"red\">■" . $line . "行目でエラーが発生しました。</font></br>\n"; 
    115115                foreach($arrCSVErr as $val) { 
    116116                    echo "<font color=\"red\">$val</font></br>\n";   
     
    125125            $arrParam = $objFormParam->getHashArray(); 
    126126  
    127             if(!$err) echo $line." / ".$rec_count. "¹ÔÌÜ¡¡¡Ê¾¦ÉÊID¡§".$arrParam['product_id']." / ¾¦ÉÊ̾¡§".$arrParam['name'].")\n<br />"; 
     127            if(!$err) echo $line." / ".$rec_count. "行目 (商品ID:".$arrParam['product_id']." / 商品名:".$arrParam['name'].")\n<br />"; 
    128128            flush(); 
    129129        } 
     
    132132        if(!$err) { 
    133133            $objQuery->commit(); 
    134             echo "¢£" . $regist . "·ï¤Î¥ì¥³¡¼¥É¤òÅÐÏ¿¤·¤Þ¤·¤¿¡£"; 
    135             // ¾¦ÉÊ·ï¿ô¥«¥¦¥ó¥È´Ø¿ô¤Î¼Â¹Ô 
     134            echo "■" . $regist . "件のレコードを登録しました。"; 
     135            // 商品件数カウント関数の実行 
    136136            sfCategory_Count($objQuery); 
    137137        } else { 
     
    143143        } 
    144144    } 
    145     echo "<br/><a href=\"javascript:window.close()\">¢ªÊĤ¸¤ë</a>"; 
     145    echo "<br/><a href=\"javascript:window.close()\">→閉じる</a>"; 
    146146    flush(); 
    147147    exit;    
     
    157157 
    158158/*  
    159  * ´Ø¿ô̾¡§lfInitFile 
    160  * ÀâÌÀ¡¡¡§¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ 
     159 * 関数名:lfInitFile 
     160 * 説明 :ファイル情報の初期化 
    161161 */function lfInitFile() { 
    162162    global $objUpFile; 
    163     $objUpFile->addFile("CSV¥Õ¥¡¥¤¥ë", 'csv_file', array('csv'), CSV_SIZE, true, 0, 0, false); 
    164 } 
    165  
    166 /*  
    167  * ´Ø¿ô̾¡§lfInitParam 
    168  * ÀâÌÀ¡¡¡§ÆþÎϾðÊó¤Î½é´ü²½ 
     163    $objUpFile->addFile("CSVファイル", 'csv_file', array('csv'), CSV_SIZE, true, 0, 0, false); 
     164} 
     165 
     166/*  
     167 * 関数名:lfInitParam 
     168 * 説明 :入力情報の初期化 
    169169 */ 
    170170function lfInitParam() { 
    171171    global $objFormParam; 
    172172         
    173     $objFormParam->addParam("¾¦ÉÊID", "product_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    174     $objFormParam->addParam("¾¦Éʵ¬³ÊID", "product_class_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    175      
    176     $objFormParam->addParam("µ¬³Ê̾1", "dummy1"); 
    177     $objFormParam->addParam("µ¬³Ê̾2", "dummy2"); 
    178      
    179     $objFormParam->addParam("¾¦ÉÊ̾", "name", STEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    180     $objFormParam->addParam("¸ø³«¥Õ¥é¥°(1:¸ø³« 2:Èó¸ø³«)", "status", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
    181     $objFormParam->addParam("¾¦ÉÊ¥¹¥Æ¡¼¥¿¥¹", "product_flag", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
    182     $objFormParam->addParam("¾¦ÉÊ¥³¡¼¥É", "product_code", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     173    $objFormParam->addParam("商品ID", "product_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     174    $objFormParam->addParam("商品規格ID", "product_class_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     175     
     176    $objFormParam->addParam("規格名1", "dummy1"); 
     177    $objFormParam->addParam("規格名2", "dummy2"); 
     178     
     179    $objFormParam->addParam("商品名", "name", STEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     180    $objFormParam->addParam("公開フラグ(1:公開 2:非公開)", "status", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
     181    $objFormParam->addParam("商品ステータス", "product_flag", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
     182    $objFormParam->addParam("商品コード", "product_code", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    183183    $objFormParam->addParam(NORMAL_PRICE_TITLE, "price01", PRICE_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    184184    $objFormParam->addParam(SALE_PRICE_TITLE, "price02", PRICE_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
    185     $objFormParam->addParam("ºß¸Ë¿ô", "stock", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    186     $objFormParam->addParam("Á÷ÎÁ", "deliv_fee", PRICE_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    187     $objFormParam->addParam("¥Ý¥¤¥ó¥ÈÉÕͿΨ", "point_rate", PERCENTAGE_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
    188     $objFormParam->addParam("¹ØÆþÀ©¸Â", "sale_limit", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    189     $objFormParam->addParam("¥á¡¼¥«¡¼URL", "comment1", URL_LEN, "KVa", array("SPTAB_CHECK","URL_CHECK","MAX_LENGTH_CHECK")); 
    190     $objFormParam->addParam("¸¡º÷¥ï¡¼¥É", "comment3", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    191     $objFormParam->addParam("°ìÍ÷-¥á¥¤¥ó¥³¥á¥ó¥È", "main_list_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    192     $objFormParam->addParam("°ìÍ÷-¥á¥¤¥ó²èÁü", "main_list_image", LTEXT_LEN, "KVa", array("EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    193     $objFormParam->addParam("¥á¥¤¥ó¥³¥á¥ó¥È", "main_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    194     $objFormParam->addParam("¥á¥¤¥ó²èÁü", "main_image", LTEXT_LEN, "KVa", array("EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    195     $objFormParam->addParam("¥á¥¤¥ó³ÈÂç²èÁü", "main_large_image", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    196     $objFormParam->addParam("¥«¥é¡¼Èæ³Ó²èÁü", "file1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    197     $objFormParam->addParam("¾¦Éʾܺ٥ե¡¥¤¥ë", "file2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    198     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë(1)", "sub_title1", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    199     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È(1)", "sub_comment1", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    200     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö²èÁü(1)", "sub_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    201     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü(1)", "sub_large_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    202      
    203     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë(2)", "sub_title2", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    204     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È(2)", "sub_comment2", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    205     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö²èÁü(2)", "sub_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    206     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü(2)", "sub_large_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    207      
    208     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë(3)", "sub_title3", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    209     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È(3)", "sub_comment3", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    210     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö²èÁü(3)", "sub_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    211     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü(3)", "sub_large_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    212          
    213     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë(4)", "sub_title4", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    214     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È(4)", "sub_comment4", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    215     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö²èÁü(4)", "sub_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    216     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü(4)", "sub_large_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    217          
    218     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë(5)", "sub_title5", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    219     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È(5)", "sub_comment5", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    220     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö²èÁü(5)", "sub_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    221     $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü(5)", "sub_large_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    222      
    223     $objFormParam->addParam("ȯÁ÷ÆüÌÜ°Â", "deliv_date_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     185    $objFormParam->addParam("在庫数", "stock", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     186    $objFormParam->addParam("送料", "deliv_fee", PRICE_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     187    $objFormParam->addParam("ポイント付与率", "point_rate", PERCENTAGE_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 
     188    $objFormParam->addParam("購入制限", "sale_limit", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     189    $objFormParam->addParam("メーカーURL", "comment1", URL_LEN, "KVa", array("SPTAB_CHECK","URL_CHECK","MAX_LENGTH_CHECK")); 
     190    $objFormParam->addParam("検索ワード", "comment3", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     191    $objFormParam->addParam("一覧-メインコメント", "main_list_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     192    $objFormParam->addParam("一覧-メイン画像", "main_list_image", LTEXT_LEN, "KVa", array("EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     193    $objFormParam->addParam("メインコメント", "main_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     194    $objFormParam->addParam("メイン画像", "main_image", LTEXT_LEN, "KVa", array("EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     195    $objFormParam->addParam("メイン拡大画像", "main_large_image", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     196    $objFormParam->addParam("カラー比較画像", "file1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     197    $objFormParam->addParam("商品詳細ファイル", "file2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     198    $objFormParam->addParam("詳細-サブタイトル(1)", "sub_title1", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     199    $objFormParam->addParam("詳細-サブコメント(1)", "sub_comment1", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     200    $objFormParam->addParam("詳細-サブ画像(1)", "sub_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     201    $objFormParam->addParam("詳細-サブ拡大画像(1)", "sub_large_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     202     
     203    $objFormParam->addParam("詳細-サブタイトル(2)", "sub_title2", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     204    $objFormParam->addParam("詳細-サブコメント(2)", "sub_comment2", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     205    $objFormParam->addParam("詳細-サブ画像(2)", "sub_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     206    $objFormParam->addParam("詳細-サブ拡大画像(2)", "sub_large_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     207     
     208    $objFormParam->addParam("詳細-サブタイトル(3)", "sub_title3", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     209    $objFormParam->addParam("詳細-サブコメント(3)", "sub_comment3", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     210    $objFormParam->addParam("詳細-サブ画像(3)", "sub_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     211    $objFormParam->addParam("詳細-サブ拡大画像(3)", "sub_large_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     212         
     213    $objFormParam->addParam("詳細-サブタイトル(4)", "sub_title4", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     214    $objFormParam->addParam("詳細-サブコメント(4)", "sub_comment4", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     215    $objFormParam->addParam("詳細-サブ画像(4)", "sub_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     216    $objFormParam->addParam("詳細-サブ拡大画像(4)", "sub_large_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     217         
     218    $objFormParam->addParam("詳細-サブタイトル(5)", "sub_title5", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     219    $objFormParam->addParam("詳細-サブコメント(5)", "sub_comment5", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     220    $objFormParam->addParam("詳細-サブ画像(5)", "sub_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     221    $objFormParam->addParam("詳細-サブ拡大画像(5)", "sub_large_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     222     
     223    $objFormParam->addParam("発送日目安", "deliv_date_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    224224     
    225225    for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) { 
    226         $objFormParam->addParam("¤ª¤¹¤¹¤á¾¦ÉÊ($cnt)", "recommend_product_id$cnt", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
    227         $objFormParam->addParam("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È($cnt)", "recommend_comment$cnt", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     226        $objFormParam->addParam("おすすめ商品($cnt)", "recommend_product_id$cnt", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 
     227        $objFormParam->addParam("詳細-サブコメント($cnt)", "recommend_comment$cnt", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    228228    } 
    229229     
    230     $objFormParam->addParam("¾¦ÉÊ¥«¥Æ¥´¥ê", "category_id", STEXT_LEN, "n", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    231 } 
    232  
    233 /*  
    234  * ´Ø¿ô̾¡§lfRegistProduct 
    235  * °ú¿ô1 ¡§SC_Query¥ª¥Ö¥¸¥§¥¯¥È 
    236  * ÀâÌÀ¡¡¡§¾¦ÉÊÅÐÏ¿ 
     230    $objFormParam->addParam("商品カテゴリ", "category_id", STEXT_LEN, "n", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     231} 
     232 
     233/*  
     234 * 関数名:lfRegistProduct 
     235 * 引数1 :SC_Queryオブジェクト 
     236 * 説明 :商品登録 
    237237 */ 
    238238function lfRegistProduct($objQuery, $line = "") { 
     
    240240    $arrRet = $objFormParam->getHashArray(); 
    241241     
    242     // dtb_products°Ê³°¤ËÅÐÏ¿¤µ¤ì¤ëÃͤò½ü³°¤¹¤ë¡£ 
     242    // dtb_products以外に登録される値を除外する。 
    243243    foreach($arrRet as $key => $val) { 
    244244        switch($key) { 
     
    268268        } 
    269269    } 
    270     // ÅÐÏ¿»þ´Ö¤òÀ¸À®(DB¤Înow()¤À¤Ècommit¤·¤¿ºÝ¡¢¤¹¤Ù¤ÆƱ°ì¤Î»þ´Ö¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦) 
     270    // 登録時間を生成(DBのnow()だとcommitした際、すべて同一の時間になってしまう) 
    271271    $time = date("Y-m-d H:i:s"); 
    272     // Éðʲ¼¤òÀ¸À® 
     272    // 秒以下を生成 
    273273    if($line != "") { 
    274274        $microtime = sprintf("%06d", $line); 
     
    289289 
    290290    if($arrRet['product_id'] != "" && $arrRet['product_class_id'] != "") { 
    291         // ¥«¥Æ¥´¥êÆâ¥é¥ó¥¯¤ÎÄ´À°½èÍý 
     291        // カテゴリ内ランクの調整処理 
    292292        $old_catid = $objQuery->get("dtb_products", "category_id", "product_id = ?", array($arrRet['product_id'])); 
    293293        sfMoveCatRank($objQuery, "dtb_products", "product_id", "category_id", $old_catid, $arrRet['category_id'], $arrRet['product_id']); 
    294294 
    295         // UPDATE¤Î¼Â¹Ô 
     295        // UPDATEの実行 
    296296        $where = "product_id = ?"; 
    297297        $objQuery->update("dtb_products", $sqlval, $where, array($sqlval['product_id'])); 
    298298    } else { 
    299299 
    300         // ¿·µ¬ÅÐÏ¿ 
    301         // postgresql¤Èmysql¤È¤Ç½èÍý¤òʬ¤±¤ë 
     300        // 新規登録 
     301        // postgresqlとmysqlとで処理を分ける 
    302302        if (DB_TYPE == "pgsql") { 
    303303            $product_id = $objQuery->nextval("dtb_products","product_id"); 
     
    308308        $sqlval['create_date'] = $time; 
    309309         
    310         // ¥«¥Æ¥´¥êÆâ¤ÇºÇÂç¤Î¥é¥ó¥¯¤ò³ä¤êÅö¤Æ¤ë 
     310        // カテゴリ内で最大のランクを割り当てる 
    311311        $sqlval['rank'] = $objQuery->max("dtb_products", "rank", "category_id = ?", array($arrRet['category_id'])) + 1; 
    312312         
    313         // INSERT¤Î¼Â¹Ô 
     313        // INSERTの実行 
    314314        $objQuery->insert("dtb_products", $sqlval); 
    315315    } 
    316316     
    317     // µ¬³ÊÅÐÏ¿ 
     317    // 規格登録 
    318318    lfRegistProductClass($objQuery, $arrRet, $sqlval['product_id'], $arrRet['product_class_id']); 
    319319     
    320     // ¤ª¤¹¤¹¤á¾¦ÉÊÅÐÏ¿ 
     320    // おすすめ商品登録 
    321321    $objQuery->delete("dtb_recommend_products", "product_id = ?", array($sqlval['product_id'])); 
    322322    for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) { 
     
    340340 
    341341/*  
    342  * ´Ø¿ô̾¡§lfRegistProductClass 
    343  * °ú¿ô1 ¡§SC_Query¥ª¥Ö¥¸¥§¥¯¥È 
    344  * °ú¿ô2 ¡§¾¦Éʵ¬³Ê¾ðÊóÇÛÎó 
    345  * °ú¿ô3 ¡§¾¦ÉÊID 
    346  * °ú¿ô4 ¡§¾¦Éʵ¬³ÊID 
    347  * ÀâÌÀ¡¡¡§¾¦Éʵ¬³ÊÅÐÏ¿ 
     342 * 関数名:lfRegistProductClass 
     343 * 引数1 :SC_Queryオブジェクト 
     344 * 引数2 :商品規格情報配列 
     345 * 引数3 :商品ID 
     346 * 引数4 :商品規格ID 
     347 * 説明 :商品規格登録 
    348348 */ 
    349349function lfRegistProductClass($objQuery, $arrList, $product_id, $product_class_id) { 
     
    363363         
    364364    if($product_class_id == "") { 
    365         // ¿·µ¬ÅÐÏ¿ 
     365        // 新規登録 
    366366        $where = "product_id = ?"; 
    367         // Ç°¤Î¤¿¤á¤Ë´û¸¤Îµ¬³Ê¤òºï½ü 
     367        // 念のために既存の規格を削除 
    368368        $objQuery->delete("dtb_products_class", $where, array($product_id)); 
    369369        $sqlval['product_id'] = $product_id; 
     
    373373        $objQuery->insert("dtb_products_class", $sqlval); 
    374374    } else { 
    375         // ´û¸ÊÔ½¸ 
     375        // 既存編集 
    376376        $where = "product_id = ? AND product_class_id = ?"; 
    377377        $objQuery->update("dtb_products_class", $sqlval, $where, array($product_id, $product_class_id));     
     
    380380 
    381381/*  
    382  * ´Ø¿ô̾¡§lfCheckError 
    383  * ÀâÌÀ¡¡¡§ÆþÎÏ¥Á¥§¥Ã¥¯ 
     382 * 関数名:lfCheckError 
     383 * 説明 :入力チェック 
    384384 */ 
    385385function lfCheckError() { 
    386386    global $objFormParam; 
    387     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
     387    // 入力データを渡す。 
    388388    $arrRet =  $objFormParam->getHashArray(); 
    389389    $objErr = new SC_CheckError($arrRet); 
     
    392392    if(count($objErr->arrErr) == 0) { 
    393393        $objQuery = new SC_Query(); 
    394         // ¾¦ÉÊID¡¢µ¬³ÊID¤Î¸ºß¥Á¥§¥Ã¥¯ 
     394        // 商品ID、規格IDの存在チェック 
    395395        if($arrRet['product_id'] != "") { 
    396396            $count = $objQuery->count("dtb_products", "product_id = ?", array($arrRet['product_id'])); 
    397397            if($count == 0) { 
    398                 $objErr->arrErr['product_id'] = "¢¨ »ØÄê¤Î¾¦ÉÊID¤Ï¡¢ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"; 
     398                $objErr->arrErr['product_id'] = "※ 指定の商品IDは、登録されていません。"; 
    399399            } 
    400400        } 
     
    406406            } 
    407407            if($count == 0) { 
    408                 $objErr->arrErr['product_class_id'] = "¢¨ »ØÄê¤Îµ¬³ÊID¤Ï¡¢ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"; 
    409             } 
    410         } 
    411          
    412         // ¸ºß¤¹¤ë¥«¥Æ¥´¥êID¤«¥Á¥§¥Ã¥¯ 
     408                $objErr->arrErr['product_class_id'] = "※ 指定の規格IDは、登録されていません。"; 
     409            } 
     410        } 
     411         
     412        // 存在するカテゴリIDかチェック 
    413413        $count = $objQuery->count("dtb_category", "category_id = ?", array($arrRet['category_id'])); 
    414414        if($count == 0) { 
    415             $objErr->arrErr['product_id'] = "¢¨ »ØÄê¤Î¥«¥Æ¥´¥êID¤Ï¡¢ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"; 
     415            $objErr->arrErr['product_id'] = "※ 指定のカテゴリIDは、登録されていません。"; 
    416416        } 
    417417    } 
     
    420420 
    421421/*  
    422  * ´Ø¿ô̾¡§lfCSVRecordCount 
    423  * ÀâÌÀ¡¡¡§CSV¤Î¥«¥¦¥ó¥È¿ô¤òÆÀ¤ë 
    424  * °ú¿ô1 ¡§¥Õ¥¡¥¤¥ë¥Ñ¥¹ 
     422 * 関数名:lfCSVRecordCount 
     423 * 説明 :CSVのカウント数を得る 
     424 * 引数1 :ファイルパス 
    425425 */ 
    426426function lfCSVRecordCount($file_name) { 
Note: See TracChangeset for help on using the changeset viewer.