Ignore:
Timestamp:
2007/08/24 22:21:44 (17 years ago)
Author:
nanasess
Message:

リファクタリングと未定義変数の修正

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update/data/class/SC_UploadFile.php

    r15080 r15358  
    77 
    88$SC_UPLOADFILE_DIR = realpath(dirname( __FILE__)); 
    9 require_once($SC_UPLOADFILE_DIR . "/../lib/gdthumb.php");    
     9require_once($SC_UPLOADFILE_DIR . "/../lib/gdthumb.php"); 
    1010 
    1111/* アップロードファイル管理クラス */ 
    1212class SC_UploadFile { 
    13     var $temp_dir; 
    14     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     // ファイル管理クラス 
    27     function SC_UploadFile($temp_dir, $save_dir) { 
    28         $this->temp_dir = $temp_dir; 
    29         $this->save_dir = $save_dir; 
    30         $this->file_max = 0; 
    31     } 
    32  
    33     // ファイル情報追加 
    34     function addFile($disp_name, $keyname, $arrExt, $size, $necessary=false, $width=0, $height=0, $image=true) { 
    35         $this->disp_name[] = $disp_name; 
    36         $this->keyname[] = $keyname; 
    37         $this->width[] = $width; 
    38         $this->height[] = $height; 
    39         $this->arrExt[] = $arrExt; 
    40         $this->size[] = $size; 
    41         $this->necessary[] = $necessary; 
    42         $this->image[] = $image; 
    43     } 
    44     // サムネイル画像の作成 
    45     function makeThumb($src_file, $width, $height) { 
    46         // 一意なIDを取得する。 
    47         $uniqname = date("mdHi") . "_" . uniqid(""); 
    48          
    49         $dst_file = $this->temp_dir . $uniqname; 
    50          
    51         $objThumb = new gdthumb(); 
    52         $ret = $objThumb->Main($src_file, $width, $height, $dst_file); 
    53          
    54         if($ret[0] != 1) { 
    55             // エラーメッセージの表示 
    56             print($ret[1]); 
    57             exit; 
    58         } 
    59          
    60         return basename($ret[1]); 
    61     } 
    62          
    63     // アップロードされたファイルを保存する。 
    64     function makeTempFile($keyname, $rename = true) { 
    65         $objErr = new SC_CheckError(); 
    66         $cnt = 0; 
    67         $arrKeyname = array_flip($this->keyname); 
    68          
    69         if(!($_FILES[$keyname]['size'] > 0)) { 
    70             $objErr->arrErr[$keyname] = "※ " . $this->disp_name[$arrKeyname[$keyname]] . "がアップロードされていません。<br />"; 
    71         } else { 
    72             foreach($this->keyname as $val) { 
    73                 // 一致したキーのファイルに情報を保存する。 
    74                 if ($val == $keyname) { 
    75                     // 拡張子チェック 
    76                     $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->arrExt[$cnt]), array("FILE_EXT_CHECK")); 
    77                     // ファイルサイズチェック 
    78                     $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->size[$cnt]), array("FILE_SIZE_CHECK")); 
    79                     // エラーがない場合 
    80                     if(!isset($objErr->arrErr[$keyname])) { 
    81                         // 画像ファイルの場合 
    82                         if($this->image[$cnt]) { 
    83                             $this->temp_file[$cnt] = $this->makeThumb($_FILES[$keyname]['tmp_name'], $this->width[$cnt], $this->height[$cnt]); 
    84                         // 画像ファイル以外の場合 
    85                         } else { 
    86                             // 一意なファイル名を作成する。 
    87                             if($rename) { 
    88                                 $uniqname = date("mdHi") . "_" . uniqid("")."."; 
    89                                 $this->temp_file[$cnt] = ereg_replace("^.*\.",$uniqname, $_FILES[$keyname]['name']); 
    90                             } else { 
    91                                 $this->temp_file[$cnt] = $_FILES[$keyname]['name'];  
    92                             } 
    93                             $result  = copy($_FILES[$keyname]['tmp_name'], $this->temp_dir. "/". $this->temp_file[$cnt]); 
    94                             gfPrintLog($_FILES[$keyname]['name']." -> ".$this->temp_dir. "/". $this->temp_file[$cnt]); 
    95                         } 
    96                     } 
    97                 } 
    98                 $cnt++; 
    99             } 
    100         } 
    101         return $objErr->arrErr[$keyname]; 
    102     } 
    103  
    104     // 画像を削除する。 
    105     function deleteFile($keyname) { 
    106         $objImage = new SC_Image($this->temp_dir); 
    107         $cnt = 0; 
    108         foreach($this->keyname as $val) { 
    109             if ($val == $keyname) { 
    110                 // 一時ファイルの場合削除する。 
    111                 if($this->temp_file[$cnt] != "") { 
    112                     $objImage->deleteImage($this->temp_file[$cnt], $this->save_dir); 
    113                 } 
    114                 $this->temp_file[$cnt] = ""; 
    115                 $this->save_file[$cnt] = ""; 
    116             } 
    117             $cnt++; 
    118         } 
    119     } 
    120      
    121     // 一時ファイルパスを取得する。 
    122     function getTempFilePath($keyname) { 
    123         $cnt = 0; 
    124         $filepath = ""; 
    125         foreach($this->keyname as $val) { 
    126             if ($val == $keyname) { 
    127                 if($this->temp_file[$cnt] != "") { 
    128                     $filepath = $this->temp_dir . "/" . $this->temp_file[$cnt]; 
    129                 } 
    130             } 
    131             $cnt++; 
    132         } 
    133         return $filepath; 
    134     } 
    135      
    136     // 一時ファイルを保存ディレクトリに移す 
    137     function moveTempFile() { 
    138         $cnt = 0; 
    139         $objImage = new SC_Image($this->temp_dir); 
    140          
    141         foreach($this->keyname as $val) { 
    142             if($this->temp_file[$cnt] != "") { 
    143                                                      
    144                 $objImage->moveTempImage($this->temp_file[$cnt], $this->save_dir); 
    145                 // すでに保存ファイルがあった場合は削除する。 
    146                 if($this->save_file[$cnt] != "" && !ereg("^sub/", $this->save_file[$cnt])) { 
    147                     $objImage->deleteImage($this->save_file[$cnt], $this->save_dir); 
    148                 } 
    149             } 
    150             $cnt++; 
    151         } 
    152     } 
    153      
    154     // HIDDEN用のファイル名配列を返す 
    155     function getHiddenFileList() { 
    156         $cnt = 0; 
    157         foreach($this->keyname as $val) { 
    158             if($this->temp_file[$cnt] != "") { 
    159                 $arrRet["temp_" . $val] = $this->temp_file[$cnt]; 
    160             } 
    161             if($this->save_file[$cnt] != "") { 
    162                 $arrRet["save_" . $val] = $this->save_file[$cnt]; 
    163             } 
    164             $cnt++;  
    165         } 
    166         return $arrRet; 
    167     } 
    168      
    169     // HIDDENで送られてきたファイル名を取得する 
    170     function setHiddenFileList($arrPOST) { 
    171         $cnt = 0; 
    172         foreach($this->keyname as $val) { 
    173             $key = "temp_" . $val; 
    174             if($arrPOST[$key] != "") { 
    175                 $this->temp_file[$cnt] = $arrPOST[$key]; 
    176             } 
    177             $key = "save_" . $val; 
    178             if($arrPOST[$key] != "") { 
    179                 $this->save_file[$cnt] = $arrPOST[$key]; 
    180             } 
    181             $cnt++; 
    182         } 
    183     } 
    184      
    185     // フォームに渡す用のファイル情報配列を返す 
    186     function getFormFileList($temp_url, $save_url, $real_size = false) { 
    187  
    188         $cnt = 0; 
    189         foreach($this->keyname as $val) { 
    190             if($this->temp_file[$cnt] != "") { 
    191                 // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
    192                 if(ereg("/$", $temp_url)) { 
    193                     $arrRet[$val]['filepath'] = $temp_url . $this->temp_file[$cnt]; 
    194                 } else { 
    195                     $arrRet[$val]['filepath'] = $temp_url . "/" . $this->temp_file[$cnt]; 
    196                 } 
    197                 $arrRet[$val]['real_filepath'] = $this->temp_dir . $this->temp_file[$cnt]; 
    198             } elseif ($this->save_file[$cnt] != "") { 
    199                 // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
    200                 if(ereg("/$", $save_url)) { 
    201                     $arrRet[$val]['filepath'] = $save_url . $this->save_file[$cnt]; 
    202                 } else { 
    203                     $arrRet[$val]['filepath'] = $save_url . "/" . $this->save_file[$cnt]; 
    204                 } 
    205                 $arrRet[$val]['real_filepath'] = $this->save_dir . $this->save_file[$cnt]; 
    206             } 
    207             if($arrRet[$val]['filepath'] != "") { 
    208                 if($real_size){ 
    209                     if(is_file($arrRet[$val]['real_filepath'])) { 
    210                         list($width, $height) = getimagesize($arrRet[$val]['real_filepath']); 
    211                     } 
    212                     // ファイル横幅 
    213                     $arrRet[$val]['width'] = $width; 
    214                     // ファイル縦幅 
    215                     $arrRet[$val]['height'] = $height; 
    216                 }else{ 
    217                     // ファイル横幅 
    218                     $arrRet[$val]['width'] = $this->width[$cnt]; 
    219                     // ファイル縦幅 
    220                     $arrRet[$val]['height'] = $this->height[$cnt]; 
    221                 } 
    222                 // 表示名 
    223                 $arrRet[$val]['disp_name'] = $this->disp_name[$cnt]; 
    224             } 
    225             $cnt++; 
    226         } 
    227         return $arrRet; 
    228     } 
    229      
    230     // DB保存用のファイル名配列を返す 
    231     function getDBFileList() { 
    232         $cnt = 0; 
    233         foreach($this->keyname as $val) { 
    234             if($this->temp_file[$cnt] != "") { 
    235                 $arrRet[$val] = $this->temp_file[$cnt]; 
    236             } else  { 
    237                 $arrRet[$val] = $this->save_file[$cnt]; 
    238             } 
    239             $cnt++; 
    240         } 
    241         return $arrRet; 
    242     } 
    243      
    244     // DBで保存されたファイル名配列をセットする 
    245     function setDBFileList($arrVal) { 
    246         $cnt = 0; 
    247         foreach($this->keyname as $val) { 
    248             if($arrVal[$val] != "") { 
    249                 $this->save_file[$cnt] = $arrVal[$val]; 
    250             } 
    251             $cnt++;  
    252         } 
    253     } 
    254      
    255     // 画像をセットする 
    256     function setDBImageList($arrVal) { 
    257         $cnt = 0; 
    258         foreach($this->keyname as $val) { 
    259             if($arrVal[$val] != "" && $val == 'tv_products_image') { 
    260                 $this->save_file[$cnt] = $arrVal[$val]; 
    261             } 
    262             $cnt++;  
    263         } 
    264     } 
    265      
    266     // DB上のファイルの内削除要求があったファイルを削除する。  
    267     function deleteDBFile($arrVal) { 
    268         $objImage = new SC_Image($this->temp_dir); 
    269         $cnt = 0; 
    270         foreach($this->keyname as $val) { 
    271             if($arrVal[$val] != "") { 
    272                 if($this->save_file[$cnt] == "" && !ereg("^sub/", $arrVal[$val])) { 
    273                     $objImage->deleteImage($arrVal[$val], $this->save_dir); 
    274                 } 
    275             } 
    276             $cnt++;  
    277         } 
    278     } 
    279      
    280     // 必須判定 
    281     function checkEXISTS($keyname = "") { 
    282         $cnt = 0; 
    283         $arrRet = array(); 
    284         foreach($this->keyname as $val) { 
    285             if($val == $keyname || $keyname == "") { 
    286                 // 必須であればエラーチェック 
    287                 if ($this->necessary[$cnt] == true) { 
    288                     if($this->save_file[$cnt] == "" && $this->temp_file[$cnt] == "") { 
    289                         $arrRet[$val] = "※ " . $this->disp_name[$cnt] . "がアップロードされていません。<br>"; 
    290                     } 
    291                 } 
    292             } 
    293             $cnt++; 
    294         } 
    295         return $arrRet; 
    296     } 
    297          
    298     // 拡大率を指定して画像保存 
    299     function saveResizeImage($keyname, $to_w, $to_h) { 
    300         $path = ""; 
    301          
    302         // keynameの添付ファイルを取得 
    303         $arrImageKey = array_flip($this->keyname); 
    304         $file = $this->temp_file[$arrImageKey[$keyname]]; 
    305         $filepath = $this->temp_dir . $file; 
    306          
    307         $path = $this->makeThumb($filepath, $to_w, $to_h); 
    308          
    309         // ファイル名だけ返す 
    310         return basename($path); 
    311     } 
     13    var $temp_dir; 
     14    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    // ファイル管理クラス 
     27    function SC_UploadFile($temp_dir, $save_dir) { 
     28        $this->temp_dir = $temp_dir; 
     29        $this->save_dir = $save_dir; 
     30        $this->file_max = 0; 
     31    } 
     32 
     33    // ファイル情報追加 
     34    function addFile($disp_name, $keyname, $arrExt, $size, $necessary=false, $width=0, $height=0, $image=true) { 
     35        $this->disp_name[] = $disp_name; 
     36        $this->keyname[] = $keyname; 
     37        $this->width[] = $width; 
     38        $this->height[] = $height; 
     39        $this->arrExt[] = $arrExt; 
     40        $this->size[] = $size; 
     41        $this->necessary[] = $necessary; 
     42        $this->image[] = $image; 
     43    } 
     44    // サムネイル画像の作成 
     45    function makeThumb($src_file, $width, $height) { 
     46        // 一意なIDを取得する。 
     47        $uniqname = date("mdHi") . "_" . uniqid(""); 
     48 
     49        $dst_file = $this->temp_dir . $uniqname; 
     50 
     51        $objThumb = new gdthumb(); 
     52        $ret = $objThumb->Main($src_file, $width, $height, $dst_file); 
     53 
     54        if($ret[0] != 1) { 
     55            // エラーメッセージの表示 
     56            print($ret[1]); 
     57            exit; 
     58        } 
     59 
     60        return basename($ret[1]); 
     61    } 
     62 
     63    // アップロードされたファイルを保存する。 
     64    function makeTempFile($keyname, $rename = true) { 
     65        $objErr = new SC_CheckError(); 
     66        $cnt = 0; 
     67        $arrKeyname = array_flip($this->keyname); 
     68 
     69        if(!($_FILES[$keyname]['size'] > 0)) { 
     70            $objErr->arrErr[$keyname] = "※ " . $this->disp_name[$arrKeyname[$keyname]] . "がアップロードされていません。<br />"; 
     71        } else { 
     72            foreach($this->keyname as $val) { 
     73                // 一致したキーのファイルに情報を保存する。 
     74                if ($val == $keyname) { 
     75                    // 拡張子チェック 
     76                    $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->arrExt[$cnt]), array("FILE_EXT_CHECK")); 
     77                    // ファイルサイズチェック 
     78                    $objErr->doFunc(array($this->disp_name[$cnt], $keyname, $this->size[$cnt]), array("FILE_SIZE_CHECK")); 
     79                    // エラーがない場合 
     80                    if(!isset($objErr->arrErr[$keyname])) { 
     81                        // 画像ファイルの場合 
     82                        if($this->image[$cnt]) { 
     83                            $this->temp_file[$cnt] = $this->makeThumb($_FILES[$keyname]['tmp_name'], $this->width[$cnt], $this->height[$cnt]); 
     84                        // 画像ファイル以外の場合 
     85                        } else { 
     86                            // 一意なファイル名を作成する。 
     87                            if($rename) { 
     88                                $uniqname = date("mdHi") . "_" . uniqid("")."."; 
     89                                $this->temp_file[$cnt] = ereg_replace("^.*\.",$uniqname, $_FILES[$keyname]['name']); 
     90                            } else { 
     91                                $this->temp_file[$cnt] = $_FILES[$keyname]['name']; 
     92                            } 
     93                            $result  = copy($_FILES[$keyname]['tmp_name'], $this->temp_dir. "/". $this->temp_file[$cnt]); 
     94                            gfPrintLog($_FILES[$keyname]['name']." -> ".$this->temp_dir. "/". $this->temp_file[$cnt]); 
     95                        } 
     96                    } 
     97                } 
     98                $cnt++; 
     99            } 
     100        } 
     101        return $objErr->arrErr[$keyname]; 
     102    } 
     103 
     104    // 画像を削除する。 
     105    function deleteFile($keyname) { 
     106        $objImage = new SC_Image($this->temp_dir); 
     107        $cnt = 0; 
     108        foreach($this->keyname as $val) { 
     109            if ($val == $keyname) { 
     110                // 一時ファイルの場合削除する。 
     111                if($this->temp_file[$cnt] != "") { 
     112                    $objImage->deleteImage($this->temp_file[$cnt], $this->save_dir); 
     113                } 
     114                $this->temp_file[$cnt] = ""; 
     115                $this->save_file[$cnt] = ""; 
     116            } 
     117            $cnt++; 
     118        } 
     119    } 
     120 
     121    // 一時ファイルパスを取得する。 
     122    function getTempFilePath($keyname) { 
     123        $cnt = 0; 
     124        $filepath = ""; 
     125        foreach($this->keyname as $val) { 
     126            if ($val == $keyname) { 
     127                if($this->temp_file[$cnt] != "") { 
     128                    $filepath = $this->temp_dir . "/" . $this->temp_file[$cnt]; 
     129                } 
     130            } 
     131            $cnt++; 
     132        } 
     133        return $filepath; 
     134    } 
     135 
     136    // 一時ファイルを保存ディレクトリに移す 
     137    function moveTempFile() { 
     138        $cnt = 0; 
     139        $objImage = new SC_Image($this->temp_dir); 
     140 
     141        foreach($this->keyname as $val) { 
     142            if(isset($this->temp_file[$cnt]) && $this->temp_file[$cnt] != "") { 
     143 
     144                $objImage->moveTempImage($this->temp_file[$cnt], $this->save_dir); 
     145                // すでに保存ファイルがあった場合は削除する。 
     146                if($this->save_file[$cnt] != "" && !ereg("^sub/", $this->save_file[$cnt])) { 
     147                    $objImage->deleteImage($this->save_file[$cnt], $this->save_dir); 
     148                } 
     149            } 
     150            $cnt++; 
     151        } 
     152    } 
     153 
     154    // HIDDEN用のファイル名配列を返す 
     155    function getHiddenFileList() { 
     156        $cnt = 0; 
     157        $arrRet = array(); 
     158        foreach($this->keyname as $val) { 
     159            if(isset($this->temp_file[$cnt]) && $this->temp_file[$cnt] != "") { 
     160                $arrRet["temp_" . $val] = $this->temp_file[$cnt]; 
     161            } 
     162            if(isset($this->save_file[$cnt]) && $this->save_file[$cnt] != "") { 
     163                $arrRet["save_" . $val] = $this->save_file[$cnt]; 
     164            } 
     165            $cnt++; 
     166        } 
     167        return $arrRet; 
     168    } 
     169 
     170    // HIDDENで送られてきたファイル名を取得する 
     171    function setHiddenFileList($arrPOST) { 
     172        $cnt = 0; 
     173        foreach($this->keyname as $val) { 
     174            $key = "temp_" . $val; 
     175            if(isset($arrPOST[$key]) && !empty($arrPOST[$key])) { 
     176                $this->temp_file[$cnt] = $arrPOST[$key]; 
     177            } 
     178            $key = "save_" . $val; 
     179            if(isset($arrPOST[$key]) && !empty($arrPOST[$key])) { 
     180                $this->save_file[$cnt] = $arrPOST[$key]; 
     181            } 
     182            $cnt++; 
     183        } 
     184    } 
     185 
     186    // フォームに渡す用のファイル情報配列を返す 
     187    function getFormFileList($temp_url, $save_url, $real_size = false) { 
     188        $arrRet = array(); 
     189        $cnt = 0; 
     190        foreach($this->keyname as $val) { 
     191            if(isset($this->temp_file[$cnt]) && $this->temp_file[$cnt] != "") { 
     192                // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
     193                if(ereg("/$", $temp_url)) { 
     194                    $arrRet[$val]['filepath'] = $temp_url . $this->temp_file[$cnt]; 
     195                } else { 
     196                    $arrRet[$val]['filepath'] = $temp_url . "/" . $this->temp_file[$cnt]; 
     197                } 
     198                $arrRet[$val]['real_filepath'] = $this->temp_dir . $this->temp_file[$cnt]; 
     199            } elseif (isset($this->save_file[$cnt]) && $this->save_file[$cnt] != "") { 
     200                // ファイルパスチェック(パスのスラッシュ/が連続しないようにする。) 
     201                if(ereg("/$", $save_url)) { 
     202                    $arrRet[$val]['filepath'] = $save_url . $this->save_file[$cnt]; 
     203                } else { 
     204                    $arrRet[$val]['filepath'] = $save_url . "/" . $this->save_file[$cnt]; 
     205                } 
     206                $arrRet[$val]['real_filepath'] = $this->save_dir . $this->save_file[$cnt]; 
     207            } 
     208            if(isset($arrRet[$val]['filepath']) && !empty($arrRet[$val]['filepath'])) { 
     209                if($real_size){ 
     210                    if(is_file($arrRet[$val]['real_filepath'])) { 
     211                        list($width, $height) = getimagesize($arrRet[$val]['real_filepath']); 
     212                    } 
     213                    // ファイル横幅 
     214                    $arrRet[$val]['width'] = $width; 
     215                    // ファイル縦幅 
     216                    $arrRet[$val]['height'] = $height; 
     217                }else{ 
     218                    // ファイル横幅 
     219                    $arrRet[$val]['width'] = $this->width[$cnt]; 
     220                    // ファイル縦幅 
     221                    $arrRet[$val]['height'] = $this->height[$cnt]; 
     222                } 
     223                // 表示名 
     224                $arrRet[$val]['disp_name'] = $this->disp_name[$cnt]; 
     225            } 
     226            $cnt++; 
     227        } 
     228        return $arrRet; 
     229    } 
     230 
     231    // DB保存用のファイル名配列を返す 
     232    function getDBFileList() { 
     233        $cnt = 0; 
     234        foreach($this->keyname as $val) { 
     235            if(isset($this->temp_file[$cnt]) && $this->temp_file[$cnt] != "") { 
     236                $arrRet[$val] = $this->temp_file[$cnt]; 
     237            } else  { 
     238                $arrRet[$val] = $this->save_file[$cnt]; 
     239            } 
     240            $cnt++; 
     241        } 
     242        return $arrRet; 
     243    } 
     244 
     245    // DBで保存されたファイル名配列をセットする 
     246    function setDBFileList($arrVal) { 
     247        $cnt = 0; 
     248        foreach($this->keyname as $val) { 
     249            if(isset($arrVal[$val]) && $arrVal[$val] != "") { 
     250                $this->save_file[$cnt] = $arrVal[$val]; 
     251            } 
     252            $cnt++; 
     253        } 
     254    } 
     255 
     256    // 画像をセットする 
     257    function setDBImageList($arrVal) { 
     258        $cnt = 0; 
     259        foreach($this->keyname as $val) { 
     260            if($arrVal[$val] != "" && $val == 'tv_products_image') { 
     261                $this->save_file[$cnt] = $arrVal[$val]; 
     262            } 
     263            $cnt++; 
     264        } 
     265    } 
     266 
     267    // DB上のファイルの内削除要求があったファイルを削除する。 
     268    function deleteDBFile($arrVal) { 
     269        $objImage = new SC_Image($this->temp_dir); 
     270        $cnt = 0; 
     271        foreach($this->keyname as $val) { 
     272            if($arrVal[$val] != "") { 
     273                if($this->save_file[$cnt] == "" && !ereg("^sub/", $arrVal[$val])) { 
     274                    $objImage->deleteImage($arrVal[$val], $this->save_dir); 
     275                } 
     276            } 
     277            $cnt++; 
     278        } 
     279    } 
     280 
     281    // 必須判定 
     282    function checkEXISTS($keyname = "") { 
     283        $cnt = 0; 
     284        $arrRet = array(); 
     285        foreach($this->keyname as $val) { 
     286            if($val == $keyname || $keyname == "") { 
     287                // 必須であればエラーチェック 
     288                if ($this->necessary[$cnt] == true) { 
     289                    if(isset($this->save_file[$cnt]) && $this->save_file[$cnt] == "" 
     290                            && isset($this->temp_file[$cnt]) && $this->temp_file[$cnt] == "") { 
     291                        $arrRet[$val] = "※ " . $this->disp_name[$cnt] . "がアップロードされていません。<br>"; 
     292                    } 
     293                } 
     294            } 
     295            $cnt++; 
     296        } 
     297        return $arrRet; 
     298    } 
     299 
     300    // 拡大率を指定して画像保存 
     301    function saveResizeImage($keyname, $to_w, $to_h) { 
     302        $path = ""; 
     303 
     304        // keynameの添付ファイルを取得 
     305        $arrImageKey = array_flip($this->keyname); 
     306        $file = $this->temp_file[$arrImageKey[$keyname]]; 
     307        $filepath = $this->temp_dir . $file; 
     308 
     309        $path = $this->makeThumb($filepath, $to_w, $to_h); 
     310 
     311        // ファイル名だけ返す 
     312        return basename($path); 
     313    } 
    312314} 
    313315?> 
Note: See TracChangeset for help on using the changeset viewer.