Ignore:
Timestamp:
2007/03/11 06:27:25 (19 years ago)
Author:
nanasess
Message:

r11729 の変更を取消

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/comu/data/class/SC_UploadFile.php

    r11729 r11730  
    99require_once($SC_UPLOADFILE_DIR . "/../lib/gdthumb.php");    
    1010 
    11 /* アップロードファイル管理クラス */ 
     11/* ¥¢¥Ã¥×¥í¡¼¥É¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹ */ 
    1212class SC_UploadFile { 
    1313    var $temp_dir; 
    1414    var $save_dir; 
    15     var $keyname;   // ファイルinputタグのname 
    16     var $width;     // 横サイズ 
    17     var $height;    // 縦サイズ 
    18     var $arrExt;    // 指定する拡張子 
    19     var $temp_file; // 保存されたファイル名 
    20     var $save_file; // DBから読み出したファイル名 
    21     var $disp_name; // 項目名 
    22     var $size;      // 制限サイズ 
    23     var $necessary; // 必須の場合:true 
    24     var $image;     // 画像の場合:true 
    25      
    26     // ファイル管理クラス 
     15    var $keyname;   // ¥Õ¥¡¥¤¥ëinput¥¿¥°¤Îname 
     16    var $width;     // ²£¥µ¥¤¥º 
     17    var $height;    // ½Ä¥µ¥¤¥º 
     18    var $arrExt;    // »ØÄꤹ¤ë³ÈÄ¥»Ò 
     19    var $temp_file; // Êݸ¤µ¤ì¤¿¥Õ¥¡¥¤¥ë̾ 
     20    var $save_file; // DB¤«¤éÆÉ¤ß½Ð¤·¤¿¥Õ¥¡¥¤¥ë̾ 
     21    var $disp_name; // ¹àÌÜ̾ 
     22    var $size;      // À©¸Â¥µ¥¤¥º 
     23    var $necessary; // ɬ¿Ü¤Î¾ì¹ç:true 
     24    var $image;     // ²èÁü¤Î¾ì¹ç:true 
     25     
     26    // ¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹ 
    2727    function SC_UploadFile($temp_dir, $save_dir) { 
    2828        $this->temp_dir = $temp_dir; 
     
    3131    } 
    3232 
    33     // ファイル情報追加 
     33    // ¥Õ¥¡¥¤¥ë¾ðÊóÄɲà
    3434    function addFile($disp_name, $keyname, $arrExt, $size, $necessary=false, $width=0, $height=0, $image=true) { 
    3535        $this->disp_name[] = $disp_name; 
     
    4242        $this->image[] = $image; 
    4343    } 
    44     // サムネイル画像の作成 
     44    // ¥µ¥à¥Í¥¤¥ë²èÁü¤ÎºîÀ® 
    4545    function makeThumb($src_file, $width, $height) { 
    46         // 一意なIDを取得する。 
     46        // °ì°Õ¤ÊID¤ò¼èÆÀ¤¹¤ë¡£ 
    4747        $uniqname = date("mdHi") . "_" . uniqid(""); 
    4848         
     
    5353         
    5454        if($ret[0] != 1) { 
    55             // エラーメッセージの表示 
     55            // ¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨ 
    5656            print($ret[1]); 
    5757            exit; 
     
    6161    } 
    6262         
    63     // アップロードされたファイルを保存する。 
     63    // ¥¢¥Ã¥×¥í¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÊݸ¤¹¤ë¡£ 
    6464    function makeTempFile($keyname, $rename = true) { 
    6565        $objErr = new SC_CheckError(); 
     
    6868         
    6969        if(!($_FILES[$keyname]['size'] > 0)) { 
    70             $objErr->arrErr[$keyname] = "※ " . $this->disp_name[$arrKeyname[$keyname]] . "がアップロードされていません。<br />"; 
     70            $objErr->arrErr[$keyname] = "¢¨ " . $this->disp_name[$arrKeyname[$keyname]] . "¤¬¥¢¥Ã¥×¥í¡¼¥É¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£<br />"; 
    7171        } else { 
    7272            foreach($this->keyname as $val) { 
    73                 // 一致したキーのファイルに情報を保存する。 
     73                // °ìÃפ·¤¿¥­¡¼¤Î¥Õ¥¡¥¤¥ë¤Ë¾ðÊó¤òÊݸ¤¹¤ë¡£ 
    7474                if ($val == $keyname) { 
    75                     // 拡張子チェック 
     75                    // ³ÈÄ¥»Ò¥Á¥§¥Ã¥¯ 
    7676                    $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->arrExt[$cnt]), array("FILE_EXT_CHECK")); 
    77                     // ファイルサイズチェック 
     77                    // ¥Õ¥¡¥¤¥ë¥µ¥¤¥º¥Á¥§¥Ã¥¯ 
    7878                    $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->size[$cnt]), array("FILE_SIZE_CHECK")); 
    79                     // エラーがない場合 
     79                    // ¥¨¥é¡¼¤¬¤Ê¤¤¾ì¹ç 
    8080                    if(!isset($objErr->arrErr[$keyname])) { 
    81                         // 画像ファイルの場合 
     81                        // ²èÁü¥Õ¥¡¥¤¥ë¤Î¾ì¹ç 
    8282                        if($this->image[$cnt]) { 
    8383                            $this->temp_file[$cnt] = $this->makeThumb($_FILES[$keyname]['tmp_name'], $this->width[$cnt], $this->height[$cnt]); 
    84                         // 画像ファイル以外の場合 
     84                        // ²èÁü¥Õ¥¡¥¤¥ë°Ê³°¤Î¾ì¹ç 
    8585                        } else { 
    86                             // 一意なファイル名を作成する。 
     86                            // °ì°Õ¤Ê¥Õ¥¡¥¤¥ë̾¤òºîÀ®¤¹¤ë¡£ 
    8787                            if($rename) { 
    8888                                $uniqname = date("mdHi") . "_" . uniqid("")."."; 
     
    102102    } 
    103103 
    104     // 画像を削除する。 
     104    // ²èÁü¤òºï½ü¤¹¤ë¡£ 
    105105    function deleteFile($keyname) { 
    106106        $objImage = new SC_Image($this->temp_dir); 
     
    108108        foreach($this->keyname as $val) { 
    109109            if ($val == $keyname) { 
    110                 // 一時ファイルの場合削除する。 
     110                // °ì»þ¥Õ¥¡¥¤¥ë¤Î¾ì¹çºï½ü¤¹¤ë¡£ 
    111111                if($this->temp_file[$cnt] != "") { 
    112112                    $objImage->deleteImage($this->temp_file[$cnt], $this->save_dir); 
     
    119119    } 
    120120     
    121     // 一時ファイルパスを取得する。 
     121    // °ì»þ¥Õ¥¡¥¤¥ë¥Ñ¥¹¤ò¼èÆÀ¤¹¤ë¡£ 
    122122    function getTempFilePath($keyname) { 
    123123        $cnt = 0; 
     
    134134    } 
    135135     
    136     // 一時ファイルを保存ディレクトリに移す 
     136    // °ì»þ¥Õ¥¡¥¤¥ë¤òÊݸ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤¹ 
    137137    function moveTempFile() { 
    138138        $cnt = 0; 
     
    143143                                                     
    144144                $objImage->moveTempImage($this->temp_file[$cnt], $this->save_dir); 
    145                 // すでに保存ファイルがあった場合は削除する。 
     145                // ¤¹¤Ç¤ËÊݸ¥Õ¥¡¥¤¥ë¤¬¤¢¤Ã¤¿¾ì¹ç¤Ïºï½ü¤¹¤ë¡£ 
    146146                if($this->save_file[$cnt] != "" && !ereg("^sub/", $this->save_file[$cnt])) { 
    147147                    $objImage->deleteImage($this->save_file[$cnt], $this->save_dir); 
     
    152152    } 
    153153     
    154     // HIDDEN用のファイル名配列を返す 
     154    // HIDDENÍѤΥե¡¥¤¥ë̾ÇÛÎó¤òÊÖ¤¹ 
    155155    function getHiddenFileList() { 
    156156        $cnt = 0; 
     
    167167    } 
    168168     
    169     // HIDDENで送られてきたファイル名を取得する 
     169    // HIDDEN¤ÇÁ÷¤é¤ì¤Æ¤­¤¿¥Õ¥¡¥¤¥ë̾¤ò¼èÆÀ¤¹¤ë 
    170170    function setHiddenFileList($arrPOST) { 
    171171        $cnt = 0; 
     
    183183    } 
    184184     
    185     // フォームに渡す用のファイル情報配列を返す 
     185    // ¥Õ¥©¡¼¥à¤ËÅϤ¹ÍѤΥե¡¥¤¥ë¾ðÊóÇÛÎó¤òÊÖ¤¹ 
    186186    function getFormFileList($temp_url, $save_url, $real_size = false) { 
    187187 
     
    189189        foreach($this->keyname as $val) { 
    190190            if($this->temp_file[$cnt] != "") { 
    191                 // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
     191                // ¥Õ¥¡¥¤¥ë¥Ñ¥¹¥Á¥§¥Ã¥¯(¥Ñ¥¹¤Î¥¹¥é¥Ã¥·¥å/¤¬Ï¢Â³¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¡£) 
    192192                if(ereg("/$", $temp_url)) { 
    193193                    $arrRet[$val]['filepath'] = $temp_url . $this->temp_file[$cnt]; 
     
    197197                $arrRet[$val]['filepath_dir'] = $this->temp_dir . $this->temp_file[$cnt]; 
    198198            } elseif ($this->save_file[$cnt] != "") { 
    199                 // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
     199                // ¥Õ¥¡¥¤¥ë¥Ñ¥¹¥Á¥§¥Ã¥¯(¥Ñ¥¹¤Î¥¹¥é¥Ã¥·¥å/¤¬Ï¢Â³¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¡£) 
    200200                if(ereg("/$", $save_url)) { 
    201201                    $arrRet[$val]['filepath'] = $save_url . $this->save_file[$cnt]; 
     
    209209                if($real_size){ 
    210210                    list($width, $height) = getimagesize($arrRet[$val]['filepath_dir']); 
    211                     // ファイル横幅 
     211                    // ¥Õ¥¡¥¤¥ë²£Éý 
    212212                    $arrRet[$val]['width'] = $width; 
    213                     // ファイル縦幅 
     213                    // ¥Õ¥¡¥¤¥ë½ÄÉý 
    214214                    $arrRet[$val]['height'] = $height; 
    215215                }else{ 
    216                     // ファイル横幅 
     216                    // ¥Õ¥¡¥¤¥ë²£Éý 
    217217                    $arrRet[$val]['width'] = $this->width[$cnt]; 
    218                     // ファイル縦幅 
     218                    // ¥Õ¥¡¥¤¥ë½ÄÉý 
    219219                    $arrRet[$val]['height'] = $this->height[$cnt]; 
    220220                } 
    221                 // 表示名 
     221                // ɽ¼¨Ì¾ 
    222222                $arrRet[$val]['disp_name'] = $this->disp_name[$cnt]; 
    223223            } 
     
    227227    } 
    228228     
    229     // DB保存用のファイル名配列を返す 
     229    // DBÊݸÍѤΥե¡¥¤¥ë̾ÇÛÎó¤òÊÖ¤¹ 
    230230    function getDBFileList() { 
    231231        $cnt = 0; 
     
    241241    } 
    242242     
    243     // DBで保存されたファイル名配列をセットする 
     243    // DB¤ÇÊݸ¤µ¤ì¤¿¥Õ¥¡¥¤¥ë̾ÇÛÎó¤ò¥»¥Ã¥È¤¹¤ë 
    244244    function setDBFileList($arrVal) { 
    245245        $cnt = 0; 
     
    252252    } 
    253253     
    254     // 画像をセットする 
     254    // ²èÁü¤ò¥»¥Ã¥È¤¹¤ë 
    255255    function setDBImageList($arrVal) { 
    256256        $cnt = 0; 
     
    263263    } 
    264264     
    265     // DB上のファイルの内削除要求があったファイルを削除する。  
     265    // DB¾å¤Î¥Õ¥¡¥¤¥ë¤ÎÆâºï½üÍ׵᤬¤¢¤Ã¤¿¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë¡£  
    266266    function deleteDBFile($arrVal) { 
    267267        $objImage = new SC_Image($this->temp_dir); 
     
    277277    } 
    278278     
    279     // 必須判定 
     279    // ɬ¿ÜȽÄê 
    280280    function checkEXISTS($keyname = "") { 
    281281        $cnt = 0; 
     
    283283        foreach($this->keyname as $val) { 
    284284            if($val == $keyname || $keyname == "") { 
    285                 // 必須であればエラーチェック 
     285                // ɬ¿Ü¤Ç¤¢¤ì¤Ð¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
    286286                if ($this->necessary[$cnt] == true) { 
    287287                    if($this->save_file[$cnt] == "" && $this->temp_file[$cnt] == "") { 
    288                         $arrRet[$val] = "※ " . $this->disp_name[$cnt] . "がアップロードされていません。<br>"; 
     288                        $arrRet[$val] = "¢¨ " . $this->disp_name[$cnt] . "¤¬¥¢¥Ã¥×¥í¡¼¥É¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£<br>"; 
    289289                    } 
    290290                } 
     
    295295    } 
    296296         
    297     // 拡大率を指定して画像保存 
     297    // ³ÈÂçΨ¤ò»ØÄꤷ¤Æ²èÁüÊݸ 
    298298    function saveResizeImage($keyname, $to_w, $to_h) { 
    299299        $path = ""; 
    300300         
    301         // keynameの添付ファイルを取得 
     301        // keyname¤ÎźÉÕ¥Õ¥¡¥¤¥ë¤ò¼èÆÀ 
    302302        $arrImageKey = array_flip($this->keyname); 
    303303        $file = $this->temp_file[$arrImageKey[$keyname]]; 
     
    306306        $path = $this->makeThumb($filepath, $to_w, $to_h); 
    307307         
    308         // ファイル名だけ返す 
     308        // ¥Õ¥¡¥¤¥ë̾¤À¤±ÊÖ¤¹ 
    309309        return basename($path); 
    310310    } 
Note: See TracChangeset for help on using the changeset viewer.