![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
tilekus |
|
||||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Нужно загрузить файл на сервер. Но переименовать его, например текущей датой, чтобы названия всех файлов были уникальными. Я заранее не знаю какой тип фалов будет загружаться, т.е. я не могу сказать что пользователи будут закачивать только вордовские файлы или рисунки.
Сам принцип организации закачки файла я знаю. Но вот как пееименовть :( Вот сама форма для закачки
А это обрабатывающий скрипт
Подскажите что мне нужно переделать. |
||||
|
|||||
Shark |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 18.6.2006 Где: Москва Репутация: 4 Всего: 4 |
вот как у меня сделано:
в переменной $image храниится название файла, time() - время в UNIX формате, переменная $type хранит расширение файла |
|||
|
||||
pizzz |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 14.12.2008 Где: Омск Репутация: 6 Всего: 8 |
Как минимум надо проверять тип файла. Иначе не избежать проблем
--------------------
Спасибо много, жмем кнопку репутация. Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады. |
|||
|
||||
Serkys |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1061 Регистрация: 19.4.2004 Репутация: 4 Всего: 22 |
На хабрахабре хорошо рассказано про безопасность, рекомендую почитать.
А файл переименовывается функцией rename(). |
|||
|
||||
pizzz |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 14.12.2008 Где: Омск Репутация: 6 Всего: 8 |
rename лишнее. При сохранении указываем название
--------------------
Спасибо много, жмем кнопку репутация. Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады. |
|||
|
||||
tilekus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Тогда такой вопрос, как узнать расширение передаваемого файла?
|
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
NetJunky |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 11.5.2008 Где: Tallinn Репутация: 0 Всего: 0 |
Или с помощью какого-нибудь регулярного выражения(если таковое есть) указать каких типов файлов не должно быть загружено.
-------------------- Sleep, those little slices of death; Oh how I loathe them. © Edgar Allan Poe Таллиннцы http://vingrad.ru/groups.php?action=group_...mp;group_id=139 Для записи данных объёмом 1 Терабайт на бумагу, нужно срубить 50000 деревьев. |
|||
|
||||
tilekus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Как вы думаете правильно ли будет если яделаю таким образом:
1. загружу как есть на сервер 2. с помощью basename вытащу название файла с раширением 3. отсеку от строки все кроме четырех последних символов 4. дам файлу новое название и старое расширение которое получил п.3 4. закинуть в бд Да и кто знает есть ли список может быть всех MIME типов может самых популярных Это сообщение отредактировал(а) tilekus - 31.5.2009, 15:09 |
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
почему четыре? а .jpeg, .torrent, .js, .mpg4, .gz ? зачем, если тип уже выделен?
гиблое дело, настолько не стандартизированное, что даже смысла нет пользоваться: http://filext.com/ http://filext.com/file-extension/jpg там 9 мим-типов на один только .jpg |
|||
|
||||
tilekus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
ничего не выводит Как быть? Это сообщение отредактировал(а) tilekus - 31.5.2009, 16:01 |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
bars80080, Дело не такое гиблое, если доверить его встроенным функциям mime_content_type или fileinfo. Правда нужно проверить, что соответствующие расширения на сервере есть. Впрочем, они почти стандартны.
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
supervladislav |
|
|||
![]() ///\\\///\\\///\\\ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 18.5.2006 Репутация: -8 Всего: -9 |
тебе какого типа файлы загружать надо ))
|
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
Photon |
|
|||
![]() Злобный программер ![]() ![]() Профиль Группа: Участник Сообщений: 282 Регистрация: 27.2.2009 Где: Таганрог Репутация: 10 Всего: 12 |
Ну нахрена так себя мучать?
-------------------- With best regards.. |
|||
|
||||
enof |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 30 Всего: 35 |
Photon, tar.gz, tar.bz2 ?
|
|||
|
||||
supervladislav |
|
|||
![]() ///\\\///\\\///\\\ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 18.5.2006 Репутация: -8 Всего: -9 |
а если человеку нужно загрузить определённый mime тип
если не ошибаюсь эксплорер возвращает pjpeg
Это сообщение отредактировал(а) supervladislav - 31.5.2009, 18:03 |
|||
|
||||
enof |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 30 Всего: 35 |
supervladislav, весь твой код можно смело постить сюда.
|
|||
|
||||
supervladislav |
|
|||
![]() ///\\\///\\\///\\\ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 18.5.2006 Репутация: -8 Всего: -9 |
ничего другого от тебя не ожидал ))спасибо
|
|||
|
||||
enof |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 30 Всего: 35 |
![]() значит ты знаешь, что пишешь ###код и советуешь так же делать другим? |
|||
|
||||
supervladislav |
|
|||
![]() ///\\\///\\\///\\\ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 18.5.2006 Репутация: -8 Всего: -9 |
нет я так не считаю
|
|||
|
||||
enof |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 30 Всего: 35 |
о да, это божественно ![]() |
|||
|
||||
tilekus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
Спасибо всем большое. Вроде все стало понятно. Теперь буду тестить. Потом напишу что получилось.
![]() ![]() |
|||
|
||||
SkyCoder |
|
|||
![]() Новичёк ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 26.6.2006 Где: 3-я планета от со лнца Репутация: нет Всего: нет |
Я сейчас плохо представляю какими средствами ты обладаешь(php и методы загрузки файла я успешно забыл), но ..
Я вижу две ситуации. 1. Файл для нас - поток байтов, как получили так и вернули. 2. Файл - определённая структура и мы с ней работаем. если первый случай почему не именовать файлы в формате UIN.Вася_пупкин.tar.gzip.jpeg, где UIN - уникальный номер или дата...
выглядит ужасно, но кажется писалось это так. второй вариант по моему не наш случай. Это сообщение отредактировал(а) SkyCoder - 31.5.2009, 23:52 |
|||
|
||||
Photon |
|
|||
![]() Злобный программер ![]() ![]() Профиль Группа: Участник Сообщений: 282 Регистрация: 27.2.2009 Где: Таганрог Репутация: 10 Всего: 12 |
enof, и что, от того, что пропадет "tar", файл перестанет открываться архиватором?
![]() -------------------- With best regards.. |
|||
|
||||
SkyCoder |
|
|||
![]() Новичёк ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 26.6.2006 Где: 3-я планета от со лнца Репутация: нет Всего: нет |
Право же.. не о том тема. У меня под KDE в debian'e 40% файлов без расширения и ассоциируются корректно(не интересовался правда какими средствами оно это делает). |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |