Чтение RSS каналов

Форум

Открыть Ответить

Отключить переименование файла при загрузке

5

5
1
05.12.2008 14:20:0005.12.2008 15:11:17
Привет всем! В модуле Files, есть не приятный косяк ==) При загрузке файла меняется название архива, точнее система сама генерирует имя. к примеру мой файл назывался slaed_2_3.zip , система после загрузки изменила его в Files-77772fgxuX.zip ...
Помогите сделать так чтобы сохраняло нормально, не изменяло название файла.


Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 5
2
05.12.2008 15:09:5907.12.2008 19:46:15
Файл: function/sources.php

Найти и заменить:
$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$newname."");


На:
$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$_FILES['userfile']['name']."");

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
3
05.12.2008 15:38:5405.12.2008 15:51:00
При загрузки файла пишет

"Произошла ошибка при записи файла!"

"Warning: copy(uploads/files/public//var/tmp/php8eJi5G) [function.copy]: failed to open stream: No such file or directory in /function/sources.php on line 1057

Warning: copy(uploads/files/public//var/tmp/phpXq2pTE) [function.copy]: failed to open stream: No such file or directory in //function/sources.php on line 1057

Код получился

$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$_FILES['userfile']['tmp_name']."");
if (!$res) {

4
05.12.2008 15:52:5807.12.2008 19:46:47
Упс, опечатка, замените $_FILES['Filedata']['tmp_name'] на $_FILES['userfile']['name']

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
5
05.12.2008 16:24:16
теперь просто пишет "
"Произошла ошибка при записи файла!"
6
05.12.2008 16:31:01
Весь код функции upload(... покажите.

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
7
06.12.2008 08:36:13
function upload($directory, $atypefile, $maxsize, $namefile, $width, $height) {
	global $stop;
	if (defined("ADMIN_FILE") && $_POST['sitefile'] != "") {
		$afile = str_replace(array("&", "?", "#"), "", $_POST['sitefile']);
		$type = strtolower(end(explode(".", $afile)));
		if (!check_file($type, $atypefile) && !check_size($_POST['sitefile'], $width, $height)) {
			$fn = $_POST['sitefile'];
			$path_sitefile = fopen($fn, "rb"); 
			if (!$path_sitefile) { 
				$stop = ""._ERROR_DOWN."";
				return 0;
			} else {
				$newname = ($namefile) ? "".$namefile."-".gen_pass(10).".".$type."" : "".gen_pass(15).".".$type."";
				$directoryp = "".$directory."/".basename($newname)."";
				if (file_exists($directoryp)) {
					$stop = ""._ERROR_EXIST."";
					return 0;
				} else {
					while (!feof($path_sitefile)) $data .= fread($path_sitefile, 1024);
					fclose($path_sitefile);
					$path_sitefile = fopen("".$directory."/".basename($newname)."", "wb");
					if (!$path_sitefile) {
						$stop = ""._ERROR_UP."";
						return 0;
					} else {
						fwrite($path_sitefile, $data); 
						fclose($path_sitefile);
						if (file_exists($directoryp)) {
							if (filesize($directoryp) > $maxsize) {
								unlink($directoryp);
								$stop = ""._ERROR_BIG."";
								return 0;
							} else {
								return $newname;
							}
						}
					}
				}
			}
		} else {
			$stop = (!check_file($type, $atypefile)) ? "".check_size($_POST['sitefile'], $width, $height)."" : "".check_file($type, $atypefile)."";
			return 0;
		}
	}
	if (intval($_FILES['userfile']['size'])) {
		if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
			if ($_FILES['userfile']['size'] > $maxsize) {
				$stop = ""._ERROR_BIG."";
				return 0;
			} else {
				$type = strtolower(end(explode(".", $_FILES['userfile']['name'])));
				if (!check_file($type, $atypefile) && !check_size($_FILES['userfile']['tmp_name'], $width, $height)) {
					if (file_exists("".$directory."/".$type."")) {
						$stop = ""._ERROR_EXIST."";
						return 0;
					} else {
						$newname = ($namefile) ? "".$namefile."-".gen_pass(10).".".$type."" : "".gen_pass(15).".".$type."";
						
$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$_FILES['Filedata']['name']."");

						if (!$res) {
							$stop = ""._ERROR_UP."";
							return 0;
						} else {
							return $newname;
						}
					}
				} else {
					$stop = (!check_file($type, $atypefile)) ? "".check_size($_FILES['userfile']['tmp_name'], $width, $height)."" : "".check_file($type, $atypefile)."";
					return 0;
				}
			}
		} else {
			$stop = ""._ERROR_DOWN."";
			return 0;
		}
	}
}
8
06.12.2008 09:10:10
там в основных конфигурациях есть такой пункт "Способ загрузки файлов для посетителей" там несколько вариантов выбирай те которые тебе больше подходят пункты в которых указано "...и со сменой названия файла" отчеают за функцию переименовывания. выбирая варианты без данной надписи ты отключаешь эту функцию либо просто указывай ссылку на файл например так uploads/files/publik/имя файла.разрешение
9
06.12.2008 13:41:29
У меня 2.6 лайт!
10
07.12.2008 19:39:4007.12.2008 19:43:19
almonsterz, замените в Вашем коде

Участок:
$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$_FILES['Filedata']['name'].""); 


На:
$res = copy($_FILES['userfile']['tmp_name'], "".$directory."/".$_FILES['userfile']['name'].""); 


Если не поможет, cообщите данные для доступа в систему и на ФТП по средствам обратной связи, посмотрим, в чём дело.

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
Открыть Ответить
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь