ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 2109


Ignore:
Timestamp:
Mar 15, 2007, 5:13:44 PM (13 years ago)
Author:
ebihara
Message:

#223 ソースコードの簡単なリファクタリング

Location:
OpenPNE/branches/ebihara/prj_dev28_fileupload
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/ebihara/prj_dev28_fileupload/public_html/download.php

    r2107 r2109  
    66
    77require_once './config.inc.php';
    8 
    98
    109//SNSにログインしているかどうか
  • OpenPNE/branches/ebihara/prj_dev28_fileupload/webapp/lib/db/file.php

    r2105 r2109  
    3232}
    3333
     34/**
     35 * ファイル情報をDBに挿入する
     36 *
     37 * @param string $filename
     38 * @param string $bin
     39 * @param string $type
     40 * @return mixed
     41 */
     42function db_file_insert_c_file($filename, $bin, $type = '')
     43{
     44    $data = array(
     45        'filename'   => $filename,
     46        'bin'        => $bin,
     47        'type'       => $type,
     48        'r_datetime' => db_now(),
     49    );
     50    return db_insert('c_file', $data, 'c_file_id');
     51}
     52
     53/**
     54 * ファイル名からファイル実体を取得
     55 *
     56 * @param string $filename
     57 * @return mixed
     58 */
     59function db_file_c_file4filename($filename)
     60{
     61    $sql = 'SELECT * FROM c_file WHERE filename = ?';
     62    $params = array($filename);
     63    return db_get_row($sql, $params);
     64}
     65
    3466?>
  • OpenPNE/branches/ebihara/prj_dev28_fileupload/webapp/lib/util/upload.php

    r2108 r2109  
    99 *
    1010 * 保存先:     var/tmp/
    11  * ファイル名: ($prefix)_($uid).[(jpe?g)|(gif)|(png)]
     11 * ファイル名: ($prefix)_($uid).($ext)
     12 *
     13 * @param array $upfile
     14 * @param string $uid
     15 * @param string $prefix
     16 * @param string $ext
     17 * @return mixed
    1218 */
    1319function t_file_save2tmp($upfile, $uid, $prefix='', $ext='')
    1420{
     21    // 拡張子を取得
    1522    if (!$ext) {
    16         $ext = substr($upfile['name'], strrpos($upfile['name'], '.') + 1);
     23        $path_parts = pathinfo($upfile['name']);
     24        $ext = $path_parts['extension'];
     25        $ext = strtolower($ext);
    1726    }
    1827
     
    2029    $tmp_dir_path = OPENPNE_VAR_DIR . '/tmp/';
    2130
     31    // ファイルパスを決定
    2232    $filename = sprintf('%s_%s.%s', $prefix, $uid, $ext);
    2333    $filepath = $tmp_dir_path . $filename;
    2434
    2535    if (!file_exists($upfile['tmp_name'])) {
    26 error_log("file not exists");
    2736        return false;
    2837    }
    2938
     39    // var/tmp/ディレクトリにファイルを移動する
    3040    move_uploaded_file($upfile['tmp_name'], $filepath);
    3141    chmod($filepath, 0644);
    3242    if (!is_file($filepath)) {
    33 error_log("is not file");
    3443        return false;
    3544    }
     
    3847}
    3948
    40 
     49/**
     50 * 一時ファイル情報をDBに保存する
     51 *
     52 * @param string $prefix
     53 * @param string $tmpfile
     54 * @param string $type
     55 * @return mixed
     56 */
    4157function file_insert_c_file4tmp($prefix, $tmpfile, $type)
    4258{
    43 error_log("file_insert_c_file4tmp");
    4459    if (!$tmpfile || preg_match('/[^\.\w]/', $tmpfile)) return false;
    4560
     
    4762    $ext = $path_parts['extension'];
    4863    $ext = strtolower($ext);
    49 //    ホワイトリストから拡張子をチェック
    50 /*
    51     $allowed_ext = array('jpg', 'jpeg', 'gif', 'png');
    52     if (!in_array($ext, $allowed_ext)) {
    53         return false;
    54     }
    55 */
    5664
    5765    $filename = sprintf('%s_%s.%s', $prefix, time(), $ext);
     
    6068    $filepath = $tmp_dir_path . basename($tmpfile);
    6169
    62 error_log("filepath ". $filepath);
    63 error_log("filename ". $filename);
    64 
    65     if (db_file_insert_c_file_pre($filename, $filepath, $type)) {
    66         return $filename;
    67     }
    68     return false;
    69 }
    70 function db_file_insert_c_file_pre($filename, $filepath, $type)
    71 {
    72 error_log("db_file_insert_c_file_pre ".$filepath." / ".$filename);
    7370    if (!is_readable($filepath)) {
    74 error_log("can't read");
    7571        return false;
    7672    }
    7773
    7874    $fp = fopen($filepath, 'rb');
    79     $file_Data = fread($fp, filesize($filepath));
     75    $fileData = fread($fp, filesize($filepath));
    8076    fclose($fp);
    8177
    82     return db_file_insert_c_file($filename, $file_Data, $type);
     78    if (db_file_insert_c_file($filename, $fileData, $type)) {
     79        return $filename;
     80    }
     81
     82    return false;
    8383}
    8484
    85 function db_file_insert_c_file($filename, $bin, $type = '')
    86 {
    87 error_log("db_file_insert_c_file");
    88     $db =& db_get_instance();
    89 
    90     $data = array(
    91         'filename'   => $filename,
    92         'bin'        => $bin,
    93         'type'       => $type,
    94         'r_datetime' => db_now(),
    95     );
    96 error_log("OK2");
    97     return $db->insert('c_file', $data, 'c_file_id');
    98 }
    99 /**
    100  * ファイル名からファイル実体を取得
    101  */
    102 function db_file_c_file4filename($filename)
    103 {
    104     $sql = 'SELECT * FROM c_file WHERE filename = ?';
    105     $params = array($filename);
    106     return db_get_row($sql, $params);
    107 }
    108 
    109 
    11085?>
Note: See TracChangeset for help on using the changeset viewer.