[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Зацепить имя файла в массиве
LRCenter
Здравствуйте. Код размещенный ниже хватает массив с загруженными файлами и сохраняет файлы из него в определенной директории.

echo move_uploaded_file($_FILES["Filedata"]["tmp_name"], "images/".uniqid().".jpg");


Вопрос: Как сделать так чтоб подставленное имя файла оставалось оригинальным а не заменялось на результат uniqid()? Что вставить вместо ".uniqid().".jpg?

я уже $tmp_name пробовал, без результата.

А так все работает прекрасно.



Спустя 1 час, 57 минут, 30 секунд (17.12.2009 - 13:26) Gradus написал(а):
$_FILES["Filedata"]["name"]
- оригинальное имя файла

Спустя 16 минут, 51 секунда (17.12.2009 - 13:42) twin написал(а):
Толлько учти, что если попадется файл с таким же именем, старый будет перезаписан.

Спустя 12 минут, 20 секунд (17.12.2009 - 13:55) LRCenter написал(а):
в массиве файл не один, а целая группа и у всех разные имена, должна же быть какая-то переменная хранящая имя файла.

Если подставить конкретное имя то все файлы по очереди записываются под этим именем, заменяя друг друга и остается только последний. А мне надо чтобы записались все и каждый с тем именем какое заданно у него в массиве.

$_FILES["Filedata"]["name"]

- подставлять пробовал - не работает (

Спустя 3 минуты, 9 секунд (17.12.2009 - 13:58) twin написал(а):
То есть в форме у всех полей ондинаковые имена? И все это хочется одним махом одной функцией залить на сервер?

Спустя 8 минут, 55 секунд (17.12.2009 - 14:07) LRCenter написал(а):
Тут не совсем форма, тут интерфейс на php+js+flash(ActionScript) позволяющий разом выделять и заливать несколько файлов. flash позволяет вызвать окно с возможностью выбора нескольких файлов. И передает массив php скрпту в котором всего одна вышеуказанная строка. Но я хочу чтоб он сохранял файлы с оригинальными именами.расширениями и не заменял их на что-то левое.

В оригинале все работает отлично http://www.prodevtips.com/wp-content/uploa...lash_upload.rar

Посмотрите.

Я не силен в php, но подозреваю что надо массив разложить с помощью цикла?
Не подскажите как?

Спустя 12 минут, 35 секунд (17.12.2009 - 14:19) twin написал(а):
Для начала сделай просто первой строчкой скрипта так:
<?php
print_r($_FILES);

и посмотри что в этом массиве. Может тогда будет проще разобраться.

Спустя 6 минут, 53 секунды (17.12.2009 - 14:26) LRCenter написал(а):
Выдает просто
Array ( )
там ajax все перехватывает.

Спустя 3 минуты, 20 секунд (17.12.2009 - 14:30) LRCenter написал(а):
Здесь приводится полный листинг всего кода. С комментами на инглише. В принципе он маленький. Может это поможет.

http://www.prodevtips.com/2008/10/31/flash...-file-uploader/

Спустя 13 минут, 45 секунд (17.12.2009 - 14:43) twin написал(а):
Цитата
- подставлять пробовал - не работает (

Всмысле так:
echo move_uploaded_file($_FILES["Filedata"]["tmp_name"], "images/".$_FILES["Filedata"]["name"]);

не работает??

Спустя 7 минут, 37 секунд (17.12.2009 - 14:51) LRCenter написал(а):
Блин, вот я тупой!

В синтаксисе ошибся. А он же гад через ajax работает - ошибок не выдает!

Так работает.
echo move_uploaded_file($_FILES["Filedata"]["tmp_name"], "images/".$_FILES["Filedata"]["name"]);



А я то так делал
echo move_uploaded_file($_FILES["Filedata"]["tmp_name"], "images/$_FILES["Filedata"]["name"]");


twin, спасибо вам Огромное!


_____________
Меньше кода - меньше багов ©
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.