Beispiel #1
0
@mkdir(EDITOR_YM_PATH, 0707);
@chmod(EDITOR_YM_PATH, 0707);
//기본 리다이렉트
echo $_REQUEST["htImageInfo"];
$filename = $_FILES['Filedata']['name'];
$tmp_name = $_FILES['Filedata']['tmp_name'];
preg_match("/(\\.[\\w]+)\$/", $filename, $matches);
$ext = strtolower($matches[1]);
$bFileFormat = false;
switch ($ext) {
    case '.gif':
    case '.png':
    case '.jpg':
        $bFileFormat = true;
}
$url = $_REQUEST["callback"] . '?callback_func=' . $_REQUEST["callback_func"];
$bSuccessUpload = is_uploaded_file($tmp_name);
if ($bFileFormat && $bSuccessUpload) {
    //성공 시 파일 사이즈와 URL 전송
    $real_filename = duplicate_filename(EDITOR_YM_PATH, $filename);
    @move_uploaded_file($tmp_name, EDITOR_YM_PATH . '/' . $real_filename);
    $url .= '&bNewLine=true';
    $url .= '&sFileName=' . $real_filename;
    //$url .= '&size='. $_FILES['Filedata']['size'];
    //아래 URL을 변경하시면 됩니다.
    $url .= '&sFileURL=' . EDITOR_YM_URL . '/' . $real_filename;
} else {
    //실패시 errstr=error 전송
    $url .= '&errstr=error';
}
header('Location: ' . $url);
Beispiel #2
0
 private function doUpload()
 {
     if (!empty($_FILES)) {
         $file = $_FILES['uploaded'];
         $file_name = clean_filename($file['name']);
         // TODO: mettre le dosser d'upload dans des configs
         $path = '/uploads/' . date('Y') . '/' . date('m');
         $full_path = $path . '/' . duplicate_filename(ROOT . '/www/' . $path, $file_name);
         $to_path = ROOT . '/www/' . $full_path;
         @mkdir(dirname($to_path), 0755, true);
         move_uploaded_file($file['tmp_name'], $to_path);
         if (isset($_POST['name']) && $_POST['name']) {
             $name = $_POST['name'];
         } else {
             $name = InflectionComponent::humanize(preg_replace('~\\.(.*?)$~', '', $file['name']));
         }
         $info = getimagesize($to_path);
         $File = new Library();
         $File['name'] = $name;
         $File['path'] = $full_path;
         $File['width'] = $info[0];
         $File['height'] = $info[1];
         $File['type'] = $info['mime'];
         $File->save();
         return $File['id'];
     }
 }
Beispiel #3
0
function duplicate_filename($path, $filename)
{
    if (file_exists(str_replace('//', '/', $path . '/' . $filename))) {
        return duplicate_filename($path, inc_filename($filename));
    }
    return $filename;
}