当前位置: 首页>>代码示例>>PHP>>正文


PHP CFile::MoveUploadedFile方法代码示例

本文整理汇总了PHP中CFile::MoveUploadedFile方法的典型用法代码示例。如果您正苦于以下问题:PHP CFile::MoveUploadedFile方法的具体用法?PHP CFile::MoveUploadedFile怎么用?PHP CFile::MoveUploadedFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CFile的用法示例。


在下文中一共展示了CFile::MoveUploadedFile方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: saveFileAction

 public function saveFileAction()
 {
     //die("1ssss");
     if (!($img = $_FILES['Filedata'])) {
         print json_encode(array('success' => false, 'text' => 'Не получены данные', 'debug' => $_FILES['Filedata']));
         return false;
     }
     if (front::$_req['type'] == 'img') {
         list($width, $height, $type, $attr) = getimagesize($img['tmp_name']);
         $ext = array('gif', 'jpeg', 'png');
         $ext_format = array('gif' => 1, 'jpeg' => 2, 'png' => 3);
         if ($type < 1 || $type > 3) {
             //   print(json_encode(array ('success' => false, 'text'=>"Формат не поддерживается", 'debug' => $_FILES['Filedata'])));
             //  return false;
         }
         if (front::$_req['width'] > 0 && $width > front::$_req['width'] || front::$_req['height'] > 0 && $height > front::$_req['height']) {
             print json_encode(array('success' => false, 'text' => 'Слишком большое разрешение', 'debug' => $_FILES['Filedata']));
             return false;
         }
     }
     $b_file = new CFile($_FILES['Filedata']);
     $b_file->max_size = 1048576;
     $b_file->server_root = 1;
     $f_name = $b_file->MoveUploadedFile('temp/');
     echo json_encode(array('success' => true, 'id' => $f_name, 'path' => WDCPREFIX . '/temp/' . $f_name, 'name' => $_FILES['Filedata']['name']));
 }
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:26,代码来源:page_admin_flash_upload2.class.php

示例2: saveFileAction

 function saveFileAction()
 {
     if (!($img = $_FILES['Filedata'])) {
         print json_encode(array('success' => false, 'text' => "Не получены данные", 'debug' => $_FILES['Filedata']));
         return false;
     }
     if (front::$_req["type"] == "img") {
         list($width, $height, $type, $attr) = getimagesize($img['tmp_name']);
         $ext = array('gif', 'jpeg', 'png');
         $ext_format = array('gif' => 1, 'jpeg' => 2, 'png' => 3);
         if ($type < 1 || $type > 3) {
             print json_encode(array('success' => false, 'text' => "Формат не поддерживается", 'debug' => $_FILES['Filedata']));
             return false;
         }
         if (front::$_req["width"] > 0 && $width > front::$_req["width"] || front::$_req["height"] > 0 && $height > front::$_req["height"]) {
             print json_encode(array('success' => false, 'text' => "Слишком большое разрешение", 'debug' => $_FILES['Filedata']));
             return false;
         }
     }
     $b_file = new CFile($_FILES['Filedata']);
     $b_file->max_size = 1048576;
     $b_file->server_root = 1;
     $f_name = $b_file->MoveUploadedFile("temp/");
     echo json_encode(array("success" => true, "id" => $f_name, "path" => WDCPREFIX . "/temp/" . $f_name));
 }
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:25,代码来源:page_admin_flash_upload.class.php

示例3: CFile

 if (trim($msgtext) == '') {
     $alert[2] = 'Поле не должно быть пустым!';
 }
 if (trim($title) == '') {
     $alert[0] = 'Поле не должно быть пустым!';
 }
 $file = new CFile($_FILES['attach']);
 if ($file->tmp_name) {
     $file->max_size = articles::ARTICLE_MAX_LOGOSIZE;
     $file->proportional = 1;
     $file->max_image_size = array('width' => 100, 'height' => 100, 'less' => 1);
     $file->resize = 1;
     $file->proportional = 1;
     //            $file->topfill = 1;
     $file->server_root = 1;
     $f_name = $file->MoveUploadedFile("about/articles/");
     if (!isNulArray($file->error)) {
         $alert[3] = "Файл не удовлетворяет условиям загрузки";
         $error_flag = 1;
     }
     $fileid = $file->id;
     $filepath = $file->path;
     $filename = $file->name;
     //
     //                if(!$file->img_to_small('sm_' . $f_name, array('width' => 100, 'height' => 100))) {
     //                    $alert[3] = "Невозможно уменьшить изображение";
     //                    $error_flag = 1;
     //                }
 }
 if (!$fileid) {
     $alert[3] = 'Необходимо загрузить файл.';
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:31,代码来源:index.php

示例4: CFile

     }
     $link = WDCPREFIX . '/' . $dir . (!$prevname ? $pictname : $prevname);
     $js_callback_func = "parent.addIMGLogo('{$link}', '{$img->id}')";
     $js_callback_err_func = "parent.UploadLogoFileError('{$err}')";
     break;
 case 'upload':
     if (is_array($_FILES['upload_file'])) {
         $img = new CFile($_FILES['upload_file']);
         $img->table = 'file_wizard';
         $img->disable_animate = true;
         if ($img->size > 0) {
             $dir = 'wizard/';
             $img->max_size = 5242880;
             $img->proportional = 1;
             $img->server_root = 1;
             $pictname = $img->MoveUploadedFile($dir);
             $id_upload = $img->id;
             if (!isNulArray($img->error)) {
                 if (is_array($img->error)) {
                     $err = $img->error[0];
                 } else {
                     $err = $img->error;
                 }
                 $error = true;
                 $pictname = $prevname = '';
             } else {
                 if (in_array($img->getext(), $GLOBALS['disallowed_array'])) {
                     $err = 'Недопустимый тип файла';
                     $error = true;
                 } else {
                     if (in_array($img->getext(), $GLOBALS['graf_array']) && strtolower($img->getext()) != 'swf' && strtolower($img->getext()) != 'flv') {
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:upload.php

示例5: UpdateInform

 /**
  * Сохраняет файл с резюме
  * @param    integer   $fid           uid фрилансера
  * @param    CFile     $resume        объект CFile с данными о файле с резюме. Если резюме уже существует, то оно будет перезаписано
  * @param    boolean   $del_resume    удалить резюме? В случае удаления новое резюме загужено не будет, в независимости от переменной $resume
  * @param    integer   $file_error    1 - если произошла ошибка при загрузке файла
  * @return   string                   возможная ошибка
  */
 function UpdateInform($fid, $resume, $del_resume, &$file_error)
 {
     // если юзер меняет файл резюме пока предыдущий еще не отмодерирован - будет история изменений
     $aChange = $GLOBALS['DB']->row("SELECT id, old_val, new_val FROM users_change WHERE user_id = ?i AND ucolumn = 'resume_file'", $fid);
     $aDelFile = array();
     // файлы которые нужно будет удалять сразу
     while (strlen($this->blocks) < $GLOBALS['blockssize']) {
         $this->blocks .= '1';
     }
     $dir = get_login($fid);
     $err = '';
     $old = $this->GetField($fid, $err, "resume_file");
     $error .= $err;
     if ($del_resume) {
         $this->resume_file = '';
     } elseif ($resume->name) {
         $resume->max_size = 5242880;
         $this->resume_file = $resume->MoveUploadedFile($dir . "/resume");
         $error .= $resume->StrError('<br />');
         if ($error) {
             $file_error = 1;
         }
     }
     if (!$error) {
         $error .= $this->Update($fid, $res);
         // определяемся какие файлы нужно удалить
         if ($del_resume == 1) {
             // удаляем файл резюме
             if ($aChange) {
                 // если хранили версии файла резюме на случай возврата - то грохаем обе
                 if ($aChange['old_val']) {
                     $aDelFile[] = $aChange['old_val'];
                 }
                 $aDelFile[] = $aChange['new_val'];
             } else {
                 // иначе просто грохаем файл резюме
                 $aDelFile[] = $old;
             }
         } elseif ($resume->name) {
             // меняем файл резюме
             if ($aChange && $aChange['new_val']) {
                 // грохаем только промежуточную версию, если была
                 $aDelFile[] = $aChange['new_val'];
             }
         }
     }
     // удаление не нужных файлов (если нет ошибок при сохранении разумеется)
     if ($aDelFile && !$error) {
         foreach ($aDelFile as $file) {
             $resume->Delete(0, "users/" . substr($dir, 0, 2) . "/" . $dir . "/resume/", $file);
         }
     }
     return $error;
 }
开发者ID:amage,项目名称:fl-ru-damp,代码行数:62,代码来源:freelancer.php

示例6: adWords


//.........这里部分代码省略.........
     $sql = "\n            SELECT\n                p.id, e.compname, country.country_name, city.city_name,\n                date_trunc('seconds', p.create_date) c_date, p.name, p.descr, p.cost, p.currency, p.priceby,\n                array_agg(pts.category_id) cats, array_agg(pts.subcategory_id) subcats\n            FROM\n                projects p\n            INNER JOIN\n                employer e ON e.uid = p.user_id AND e.is_banned = B'0'\n            LEFT JOIN\n                country ON country.id = p.country\n            LEFT JOIN\n                city ON city.id = p.city\n            LEFT JOIN\n                project_to_spec pts ON pts.project_id = p.id\n            LEFT JOIN\n                projects_blocked pb ON pb.project_id = p.id\n            WHERE\n                /*( p.moderator_status <> 0 OR p.moderator_status IS NULL ) AND*/ \n                pb.project_id IS NULL \n                AND p.post_date > DATE_TRUNC('day', now() - interval '2 weeks')\n            GROUP BY\n                p.id, e.compname, country.country_name, city.city_name, c_date, p.name, p.descr, p.cost, p.currency, p.priceby\n            ORDER BY\n                id DESC\n        ";
     $tmpfile = "/var/tmp/adwords.csv";
     $fp = fopen($tmpfile, "a");
     $res = $DB->query($sql);
     $c = 0;
     while ($row = pg_fetch_assoc($res)) {
         $data = array();
         // ссылка
         $data['url'] = $GLOBALS['host'] . '/projects/' . $row['id'] . '/' . translit(strtolower(htmlspecialchars_decode($row['name'], ENT_QUOTES))) . '.html';
         // цена
         if (!empty($row['cost'])) {
             switch ($row['currency']) {
                 case 0:
                     $cost = "{$row['cost']}\$";
                     break;
                 case 1:
                     $cost = "€{$row['cost']}";
                     break;
                 case 2:
                     $cost = "{$row['cost']} руб.";
                     break;
                 case 4:
                     $cost = "{$row['cost']} FM";
                     break;
             }
             switch ($row['priceby']) {
                 case 1:
                     $priceby = 'за час';
                     break;
                 case 2:
                     $priceby = 'за день';
                     break;
                 case 3:
                     $priceby = 'за месяц';
                     break;
                 case 4:
                     $priceby = 'за проект';
                     break;
             }
             $data['Wage'] = "{$cost} {$priceby}";
         } else {
             $data['Wage'] = 'По договоренности';
         }
         // специализация (если несколько, берем только первую)
         $cats = $DB->array_to_php($row['cats']);
         $subcats = $DB->array_to_php($row['subcats']);
         $data['Vacancy'] = '';
         $data['Vacancy_title'] = '';
         $data['Category 1'] = '';
         $data['Category 2'] = '';
         if ($cats[0]) {
             $data['Vacancy'] = $groups[(int) $cats[0]]['name_case'];
             $data['Category 1'] = $groups[(int) $cats[0]]['name'];
             $data['Category 1'] = preg_replace("/[\\.\\,\\_\\\\\\/\\*\\;\\:\\?]+/", " ", $data['Category 1']);
             $data['Category 1'] = preg_replace("/\\s{2,}/", " ", $data['Category 1']);
             $data['Category 1'] = preg_replace("/[^-A-Za-zА-Яа-яЁё0-9\\s]+/", "", $data['Category 1']);
         } else {
             $data['Category 1'] = 'Прочее';
         }
         if ($subcats[0]) {
             $data['Vacancy'] = $profs[(int) $subcats[0]]['name_case'];
             $data['Category 2'] = $profs[(int) $subcats[0]]['name'];
             $data['Category 2'] = preg_replace("/[\\.\\,\\_\\\\\\/\\*\\;\\:\\?]+/", " ", $data['Category 2']);
             $data['Category 2'] = preg_replace("/\\s{2,}/", " ", $data['Category 2']);
             $data['Category 2'] = preg_replace("/[^-A-Za-zА-Яа-яЁё0-9\\s]+/", "", $data['Category 2']);
         } else {
             $data['Category 2'] = $data['Category 1'];
         }
         if (empty($data['Vacancy'])) {
             $data['Vacancy'] = 'Прочее';
         } else {
             $data['Vacancy'] = preg_replace("/[\\.\\,\\_\\\\\\/\\*\\;\\:\\?]+/", " ", $data['Vacancy']);
             $data['Vacancy'] = preg_replace("/\\s{2,}/", " ", $data['Vacancy']);
             $data['Vacancy'] = preg_replace("/[^-A-Za-zА-Яа-яЁё0-9\\s]+/", "", $data['Vacancy']);
         }
         $data['Vacancy_title'] = LenghtFormatEx($data['Vacancy'], 30, '');
         $data['vacancy_id'] = $row['id'];
         // сохраняем
         if (!$c) {
             $rowsNames = array_keys($data);
             $dataStr = implode(',', $rowsNames) . "\r\n";
             fwrite($fp, chr(255) . chr(254) . iconv('CP1251', 'UTF-16LE//TRANSLIT', $dataStr));
         }
         $dataStr = implode(',', $data) . "\r\n";
         fwrite($fp, iconv('CP1251', 'UTF-16LE//TRANSLIT', $dataStr));
         $c++;
     }
     fclose($fp);
     $path = pathinfo($filename);
     $oldFile = new CFile();
     $newFile = new CFile(array('tmp_name' => $tmpfile, 'name' => NULL, 'size' => filesize($tmpfile)));
     $oldFile->server_root = 1;
     $newFile->server_root = 1;
     $oldFile->Delete(0, $path['dirname'] . '/', $path['basename']);
     $newFile->max_size = 1024 * 1048576;
     $newFile->MoveUploadedFile($path['dirname'] . '/');
     $newFile->Rename($filename);
     unlink($tmpfile);
     return true;
 }
开发者ID:amage,项目名称:fl-ru-damp,代码行数:101,代码来源:projects.php

示例7: array

}
if (empty($_SESSION['masssending']['files'])) {
    $_SESSION['masssending']['files'] = array();
}
if (count($_SESSION['masssending']['files']) >= masssending::MAX_FILES) {
    $error = 'Максимальное кол-во прикрепленных файлов - ' . masssending::MAX_FILES;
} else {
    if ($_SESSION['masssending_total_filesize'] + $_FILES['attach']['size'] > masssending::MAX_FILE_SIZE) {
        $error = 'Максимальный объем прикрепленных файлов - ' . masssending::MAX_FILE_SIZE / (1024 * 1024) . ' Mб';
    } else {
        if ($uid = get_uid(false)) {
            $login = get_login($uid);
            $file = new CFile($_FILES['attach']);
            $file->table = 'file';
            $file->max_size = masssending::MAX_FILE_SIZE;
            $filename = $file->MoveUploadedFile("{$login}/contacts");
            $filetype = $file->getext();
            $error = $file->error;
        } else {
            $error = 'Вы не авторизованы';
        }
        if (!$file->id && !$error) {
            $error = 'Ошибка при загрузке файла. Пожалуйста, попробуйте еще раз.';
        }
        $masssending->AddFile($file->id, session_id());
    }
}
if ($error || ($error = $masssending->error)) {
    echo "\n\t\t-- IBox --\n\t\t<uploaded>\n\t\t\t<nothing>opera</nothing>\n\t\t\t<status>error</status>\n\t\t\t<message>{$error}</message>\n\t\t</uploaded>\n\t\t-- IBox --\n\t";
    exit(1);
}
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:upload.php

示例8: _moveUploadedFile

 /**
  * Перемещает загруженный файл изображения на dav сервер если высота файла менее 30 px
  * @param $id           - ключ массива информации о файле в $_FILES
  * @param &$err         - текстовое сообщение об ошибке    
  * @return string       - путь к файлу от корня dav сервера без WDCSERVER или пустая строка
  * */
 private function _moveUploadedFile($id, &$err)
 {
     if (count($_FILES[$id])) {
         $data = $_FILES[$id];
         $name = strtolower($data["name"]);
         $mime = $data["type"];
         if (strpos($mime, "png") || strpos($mime, "jpg") || strpos($mime, "gif") || strpos($mime, "jpeg")) {
             $sz = getimagesize($data["tmp_name"]);
             if ($sz[1] > 30) {
                 $err = "Размер файла превышает 30 пикселей";
                 return '';
             }
             $cfile = new CFile($data);
             $name = $cfile->MoveUploadedFile("images");
             return "/" . $cfile->path . $name;
         } else {
             $err = "Недопустимый тип файла";
             return '';
         }
     }
 }
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:27,代码来源:banner_promo.php

示例9: generateArchive


//.........这里部分代码省略.........
         if (!$files) {
             throw new Exception('Нет файлов документов');
         }
         $_archive_dir = uniqid();
         $_archive_path = self::TMP_PATH . $_archive_dir . DIRECTORY_SEPARATOR;
         $_dav_temp_path = self::DAV_TMP_PATH . $_archive_dir . DIRECTORY_SEPARATOR;
         $filelist = array();
         $cfile = new CFile();
         if (!$cfile->MakeDir(trim($_dav_temp_path, '/'))) {
             throw new Exception('Не удалось создать временную директорию в хранилище');
         }
         //Формируем массив файлов для архива
         foreach ($files as $file) {
             $cfile->name = $file['fname'];
             $cfile->path = $file['path'];
             $info = new SplFileInfo($file['fname']);
             $_ext = $info->getExtension();
             $name = $info->getBasename(".{$_ext}");
             //Создаем временную директорию для файлов на локальной файловой системе
             $_local_tmp_path = "{$_archive_path}{$file['src_id']}/";
             if (!file_exists($_local_tmp_path)) {
                 if (!mkdir($_local_tmp_path, 0777, true)) {
                     throw new Exception("Нет прав на создание: {$_local_tmp_path}");
                 }
             }
             //Сколько копий документа сделать в зависимости от его типа
             $doc_cnt = isset($this->doc_type_cnt[$file['doc_type']]) && $this->doc_type_cnt[$file['doc_type']] > 1 ? $this->doc_type_cnt[$file['doc_type']] : 1;
             $_prefix = sprintf('%07d-', $file['src_id']);
             while ($doc_cnt > 0) {
                 $_suffix = $doc_cnt > 1 ? "-{$doc_cnt}" : '';
                 $_dav_tmp_filename = "{$_dav_temp_path}{$name}{$_suffix}.{$_ext}";
                 if (!$cfile->copyFileTo($_dav_tmp_filename)) {
                     throw new Exception("Не удалось скопировать: {$_dav_tmp_filename}");
                 }
                 $_tmp_name = empty($file['original_name']) ? $name : $file['original_name'];
                 $_local_tmp_filename = "{$_local_tmp_path}{$_prefix}{$_tmp_name}{$_suffix}.{$_ext}";
                 //Кодировка имен файлов для Windows
                 $_local_tmp_filename = iconv('WINDOWS-1251', 'CP866', $_local_tmp_filename);
                 //$_local_tmp_filename = iconv('WINDOWS-1251', 'UTF-8', $_local_tmp_filename);
                 $filelist[$_dav_tmp_filename] = $_local_tmp_filename;
                 //Перемещаем нужные документы из хранища во временную папку
                 if (!$cfile->copyToLocalPathFromDav($_dav_tmp_filename, $_local_tmp_filename)) {
                     throw new Exception("Не удалось переместить файл из хранища {$_dav_tmp_filename} \n                                             в локальную файловую систему {$_local_tmp_filename}");
                 }
                 $doc_cnt--;
             }
         }
         if (empty($filelist)) {
             throw new Exception("Не удалось сформировать массив документов");
         }
         /*
          * @todo: пока используем CFile::copyToLocalPathFromDav
          *             
         //Перемещаем нужные документы из хранища во временную папку
         $cfile = new CFile();
         $res = $cfile->copyFilesToLocalPath($filelist);
         
         if (!$res) {
             throw new Exception("Не удалось переместить файлы из хранища");
         }
         */
         //Создаем архив документов
         $_zip_filename = self::TMP_PATH . "{$_archive_dir}.zip";
         $zip = new ZipArchive();
         if ($zip->open($_zip_filename, ZipArchive::CREATE)) {
             foreach ($filelist as $filename) {
                 $localname = basename($filename);
                 $zip->addFile($filename, $localname);
             }
             $zip->close();
         }
         if (!file_exists($_zip_filename)) {
             throw new Exception("Не удалось создать архив.");
         }
         //Загружаем архив документов
         $cfile = new CFile(array('tmp_name' => $_zip_filename, 'size' => filesize($_zip_filename), 'name' => basename($_zip_filename)), self::$_TABLE_FILE);
         $cfile->server_root = true;
         $cfile->original_name = $archObj->getName();
         $cfile->src_id = $archObj->id;
         $cfile->max_size = 104857600;
         //100Mb
         $cfile->MoveUploadedFile(self::DAV_PATH);
         if (!$cfile->id) {
             $_error = is_array($cfile->error) ? implode(', ', $cfile->error) : $cfile->error;
             throw new Exception("Не удалось загрузить архив в хранилище: {$_error}");
         }
         $this->updateArchive($archObj->id, array('file_id' => $cfile->id, 'try_count' => $archObj->try_count + 1, 'status' => self::STATUS_SUCCESS));
         //@todo: send mail here!
         //Удаляем
         $cfile->deleteFromTempDir($_dav_temp_path);
         delete_files($_archive_path, true, 1);
         unlink($_zip_filename);
         //------------------------------------------------------------------
         $this->addArchiveToLetters($bs_ids, $cfile);
     } catch (Exception $e) {
         $this->updateArchive($archObj->id, array('status' => self::STATUS_ERROR, 'try_count' => $archObj->try_count + 1, 'techmessage' => $e->getMessage()));
         return false;
     }
     return true;
 }
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:101,代码来源:ReservesArchiveModel.php

示例10: EditPortf

 /**
  * Редактирование работы в портфолио.
  *
  * @see self::addPortf();
  * 
  * @param integer $fid     		 ИД 
  * @param string  $name    		 Название работы
  * @param string  $pict    		 Основное изображение
  * @param string  $sm_pict 		 Уменьшенное изображение
  * @param string  $link    		 Ссылка на работу
  * @param string  $descr   		 Описание работы
  * @param integer $prof    		 Специализация работы
  * @param integer $cost    		 Стоимость работы
  * @param integer $cost_type 	 Тип стоимости
  * @param integer $time_type 	 Тип времени работы
  * @param integer $time_value 	 Время рабты
  * @param integer $prev_type  	 Тип превью
  * @param mixed   $file_error    Ошибка файла если есть 
  * @param mixed   $preview_error Превью ошибка
  * @param integer $new_position  Новая позиция
  * @param integer $in_shop       Работа в магазине  
  * @param integer $is_video      Есть ли видео 
  * @param string  $video_link    Ссылка на видео
  * @param boolean $upd_prev           Нужно ли обновить превью из основного изображения
  * @param integer $moduser_id         UID изменяющего пользователя (админа). если null - то берется $fid
  * @param string  $pict_filename      Основное изображение для новой загрузки файлов
  * @param string  $prev_pict_filename Уменьшенное изображение для новой загрузки файлов
  * @param string  $login              логин пользователя на случай если редактирует админ
  * @param string  $modified_reason    причина редактирования
  *
  * @return string Сообщение об ошибке
  */
 public function EditPortf($fid, $name, $pict, $sm_pict, $link, $descr, $prof, $cost, $cost_type, $time_type, $time_value, $prev_type, $prj_id, &$file_error, &$preview_error, $new_position, $in_shop = 0, $video_link = '', $upd_prev = false, $moduser_id = null, $pict_filename = '', $prev_pict_filename = '', $login = '', $modified_reason = '')
 {
     global $DB;
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/professions.php';
     $prfs = new professions();
     $profs = $prfs->GetAllProfessionsPortf($fid);
     foreach ($profs as $pf) {
         if ($pf['checked']) {
             $check_prof[] = $pf['id'];
         }
     }
     $check_prof[] = professions::CLIENTS_PROF_ID;
     $check_prof[] = professions::BEST_PROF_ID;
     if (!in_array($prof, $check_prof)) {
         return false;
     }
     $old_pict = $this->GetField($prj_id, 'pict');
     $old_prev_pict = $this->GetField($prj_id, 'prev_pict');
     $sp = $this->GetField($prj_id, 'show_preview');
     $dir = $login ? $login : get_login($fid);
     $l_dir = substr($dir, 0, 2) . '/' . $dir;
     $mp = false;
     $filename = '';
     $fullDir = 'users/' . $l_dir . '/upload/';
     $moduser_id = $moduser_id ? $moduser_id : $fid;
     // если превью не загружено и требуется обновить превью на основе основного изображения
     if (!$sm_pict->size > 0 && $upd_prev) {
         $sm_pict = new CFile();
         $sm_pict->GetInfo($fullDir . $old_pict);
         // оригинальное большое изображение
         if ($sm_pict->size > 0) {
             $sm_pict->table = 'file_template';
             $sm_pict->quality = 100;
             if ($sm_pict->resizeImage($fullDir . 'sm_' . $sm_pict->name, 200, 200, 'auto', true)) {
                 // уменьшаем
                 $filename = 'sm_' . $sm_pict->name;
                 $static_preview = $filename;
                 $mp = true;
             }
         }
     }
     /**
      * Отдельно загруженное превью.
      */
     if (($sm_pict->size > 0 || $prev_pict_filename) && !$upd_prev) {
         $preview_error = '';
         if ($sm_pict->size > 0) {
             $sm_pict->max_image_size = array('width' => 200, 'height' => 200, 'less' => 0);
             $sm_pict->resize = 1;
             $sm_pict->proportional = 1;
             $sm_pict->prefix_file_name = 'sm_';
             $sm_pict->max_size = 102400;
             $filename = $sm_pict->MoveUploadedFile($dir . '/upload');
             $preview_error = $sm_pict->StrError();
             // генерируем неанимированное gif превью для ответов в проектах (только для gif файлов)
             // файл будет такой: st_sm_f_имя файла.gif
             if ($sm_pict->image_size['type'] == 1) {
                 $static_preview = 'st_' . $sm_pict->name;
                 $sm_pict->resizeImage($sm_pict->path . $static_preview, 200, 200, 'auto', true);
             } else {
                 $static_preview = $sm_pict->name;
             }
         } else {
             $filename = $prev_pict_filename;
             $static_preview = $prev_pict_filename;
         }
         if ($preview_error) {
             return $preview_error;
//.........这里部分代码省略.........
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:101,代码来源:portfolio.php

示例11: getimagesize

 if (!$commune_id) {
     $commune_id = __paramInit('int', 'communeid', 'communeid');
 }
 if (!$commune_id) {
     $commune_id = __paramInit('int', 'commune_id', 'commune_id');
 }
 if (!intval($commune_id)) {
     $comm_info = commune::getCommuneInfoByMsgID($top_id);
     $commune_id = $comm_info['commune_id'];
 }
 $commune_member = commune::GetUserCommuneRel($commune_id, $uid);
 if ($permissions > 0 || $commune_member['is_accepted'] || $commune_member['is_author']) {
     $info = getimagesize($_FILES['wysiwyg_uploadimage']['tmp_name']);
     if ($info['mime'] && strpos($info['mime'], 'shockwave-flash') === false) {
         $cfile = new CFile($_FILES['wysiwyg_uploadimage'], 'file_commune');
         $fname = $cfile->MoveUploadedFile($_SESSION['login'] . '/upload');
         if ($cfile->image_size['width'] > commune::IMAGE_MAX_WIDTH || $cfile->image_size['height'] > commune::IMAGE_MAX_HEIGHT) {
             $cfile->Delete($cfile->id);
             echo 'status=fileTooBig&msg=Размер изображения превышает максимально допустимый: ' . commune::IMAGE_MAX_WIDTH . ' x ' . commune::IMAGE_MAX_HEIGHT;
             exit;
         }
         if ($fname) {
             //добавить данные о файле
             commune::addWysiwygFile($cfile);
             //запомнить идентификатор временного файла
             $_SESSION['wysiwyg_inline_files'][$cfile->id] = $cfile->id;
             $link = WDCPREFIX . '/users/' . substr($_SESSION['login'], 0, 2) . '/' . $_SESSION['login'] . '/upload/' . $fname;
             $imgWidth = $cfile->image_size['width'];
             $imgHeight = $cfile->image_size['height'];
             echo "status=uploadSuccess&url={$link}&width={$imgWidth}&height={$imgHeight}";
         } else {
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:index.php

示例12: array

 $error = false;
 $error_add_file = false;
 if ($request['is_post']) {
     // загрузка файлов, сначала грузим файлы
     if ($_FILES['attach']) {
         $attach = $_FILES['attach'];
         $files = array();
         if (is_array($attach) && !empty($attach['name'])) {
             foreach ($attach['name'] as $key => $v) {
                 if (!$attach['name'][$key]) {
                     continue;
                 }
                 $tmp = new CFile(array('name' => $attach['name'][$key], 'type' => $attach['type'][$key], 'tmp_name' => $attach['tmp_name'][$key], 'error' => $attach['error'][$key], 'size' => $attach['size'][$key]));
                 $tmp->max_size = 10485760;
                 $tmp->server_root = true;
                 $tmp->MoveUploadedFile('/docs/');
                 $files_attache[] = $tmp;
                 if ($tmp->error && !$tmp->id) {
                     $error_add_file = $tmp->error;
                     $error = true;
                 }
             }
         }
     }
     if (count($_POST['attach_files_id']) > 0) {
         foreach ($_POST['attach_files_id'] as $key => $value) {
             $tmp = new CFile();
             $tmp->max_size = 10485760;
             $tmp->server_root = true;
             $tmp->GetInfoById($value);
             $files_attache[] = $tmp;
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:index.php

示例13: sprintf

 $cfile->max_size = $_config['max_file_size'];
 $cfile->server_root = $_config['server_root'];
 $cfile->max_image_size = $_config['max_image_size'];
 $cfile->resize = $_config['resize'];
 $cfile->proportional = $_config['proportional'];
 $cfile->crop = $_config['crop'];
 $cfile->topfill = $_config['topfill'];
 $cfile->allowed_ext = $_config['allowed_ext'];
 $dir = sprintf($_config['dir'], $user_obj->login);
 $cfile->_getImageSize($cfile->tmp_name);
 if ($cfile->image_size && in_array($cfile->image_size['type'], $_config['image_types'])) {
     if ($_config['minImageHeight'] && $cfile->image_size['height'] < $_config['minImageHeight'] || $_config['minImageWidth'] && $cfile->image_size['width'] < $_config['minImageWidth']) {
         $result['error'] = sprintf(STR_FTOSMAL, $_config['minImageWidth'], $_config['minImageHeight']);
         //sprintf('Изображение слишком маленькое. Минимальные размеры %d на %d точек.',$_config['minImageWidth'],$_config['minImageHeight']);
     } else {
         $filename = $cfile->MoveUploadedFile($dir);
         $error = $cfile->error;
         $error = is_array($error) ? $error : array($error);
         $cnt = count($error);
         if (!$filename || $cnt > 0) {
             $result['error'] = STR_FERR . ' ' . implode(' ', $error);
             //'Ошибка загрузки файла. '
         } else {
             $fileinfo = $uploader->createFile($cfile);
             if (count($_config['params'])) {
                 $err = $cfile->updateFileParams($_config['params']);
             }
             if (count($_config['thumbs'])) {
                 foreach ($_config['thumbs'] as $thumb) {
                     $thumb_cfile = $cfile->resizeImage($cfile->path . $thumb['prefix'] . $cfile->name, $thumb['width'], $thumb['height'], $thumb['option'], true);
                     if (!$thumb_cfile) {
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:31,代码来源:uploader.php

示例14: saveUploadedFile

 /**
  * Сохраняет загруженный файл.
  *
  * @return bool
  */
 public function saveUploadedFile($input = 'reestr3', $allowed_ext = array())
 {
     if (!isset($_FILES[$input])) {
         return false;
     }
     $cf = new CFile($_FILES[$input], $this->TABLE);
     if ($cf) {
         $cf->allowed_ext = is_array($allowed_ext) ? $allowed_ext : array($allowed_ext);
         $cf->server_root = true;
         $cf->max_size = 104857600;
         //100Mb
         if ($filename = $cf->MoveUploadedFile($this->path)) {
             return $filename;
         }
     }
     return false;
 }
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:22,代码来源:ReservesAdmin.php

示例15: CFile

 if (is_array($_FILES['attachedfiles_file']) && !$_FILES['attachedfiles_file']['error']) {
     $dir = wizard::FILE_DIR;
     $cFile = new CFile($_FILES['attachedfiles_file']);
     $cFile->table = 'file';
     switch ($type) {
         case 'wizard':
             $max_files = wizard::MAX_FILE_COUNT;
             $max_files_size = wizard::MAX_FILE_SIZE;
             break;
         default:
             $file['error'] = 'Ошибка загрузки файла';
             break;
     }
     $cFile->max_size = $max_files_size;
     $cFile->server_root = 1;
     $cFile->MoveUploadedFile($dir);
     if ($cFile->id) {
         $attachedfiles = new attachedfiles($sess);
         $files_info = $attachedfiles->calcFiles();
         $files_count = $files_info['count'];
         $files_size = $files_info['size'];
         if ($files_count + 1 > $max_files) {
             $file['error'] = "Максимальное количество файлов: {$max_files}";
         }
         if ($files_size + $cFile->size > $max_files_size) {
             $file['error'] = 'Максимальный объем файлов: ' . ConvertBtoMB($max_files_size);
         }
         if (in_array($cFile->getext(), $GLOBALS['disallowed_array'])) {
             $file['error'] = 'Недопустимый формат файла';
         }
         if ($file['error']) {
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:attachedfiles_wizard.php


注:本文中的CFile::MoveUploadedFile方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。