| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Проблема с Центром загрузки |
| Автор: DzSoft 15.2.2008, 04:24 | ||
| Сначало, Всем привет!!!! Немного лирики: Я только не давно начал изучать PHP, можно сказать ещё не соображаю в этой области. По этому прошу помочь! Вопросы у меня такие: Трабл №1 Вот есть 2 строки. Полная дорожка, что бы загрузить в папку $ufolder = "/www/my_domen.ru/htdocs/img/"; URL к папке, где файлы будут сохранены $url = "my_domen.ru/img/"; Как мне сделать так, что бы заместо папки img создавалась папка, например с датой день_месяц_год. Тоесть при загрузки файла числа 15.02.2008 создавалась папка 15_02_2008 и файл сохранялся туда. При том же если другие файлы закачивались того же числа они попадали бы именно в эту папку, а не пропадали. Трабл №2 Загружаю я на сервер файл. У него допустим название Властелин колец (то есть рускими буквами). Думаю это вообще без разницы, какими. Как правельно прописать строку, что бы имя загружаемого файла стала Random. менять ['name'] на ['tmp_name'] - я уже пробывал. Не катит. да и ошибка постоянно появляется. Если удалить эту проверку, тогда может быть 2 одинаковых получиться Random, мало вероятно, но может. А если всё такие удалить, то имя будет задаваться Рандомом, но сразуже теряется рисширение. Как мне сделать это не прибегая к удалению это строки для проверки имени ???? Warning: copy(/var/tmp/phpcbgqcr): failed to open stream: No such file or directory in /www/my_domen.ru/htdocs/index.php on line 123
Как быть ? |
| Автор: gta4kv 15.2.2008, 07:36 |
| No such file or directory in /www/my_domen.ru/htdocs/index.php Нету такой директории /www/my_domen.ru/htdocs/ Добавлено через 42 секунды ну или /var/tmp/phpcbgqcr не существует) |
| Автор: GeneralElectric 15.2.2008, 09:55 |
| 1. date() 2. basename() |
| Автор: gta4kv 15.2.2008, 13:51 |
| flashaa, ой, лагнуло)) ну ты посмотри на время)) семь утра быложе) |
| Автор: FractalizeR 15.2.2008, 14:42 |
| Для копирования закачанных пользователем на сервер файлов нужно пользоваться move_uploaded_file, а не copy. |
| Автор: DzSoft 15.2.2008, 20:50 | ||||||
Про дириктории забудь Меня волнует вопрос того, что бы "функция" генерировала и создавала папку числом (датой)
Как правельно прописать-то? Вписать в строку?
Ну скажем так, что это не закачка, а всего лишь проверки фийла на подленность имени. Если такого имени не существует, то этот Масиф пропустит данный файл, а если нет. Скажет типо: Файл уже был ранее закачан на сервер!!! |
| Автор: DzSoft 21.2.2008, 03:04 |
| В книге вычитал вот такие строки. По умолчанию файлы будут сохранены в заданном по умолчанию временном каталоге сервера. Его можно изменить, установкой переменной среды TMPDIR в среде, в которой PHP выполняется. Хотя, использование при ее установке обращения PutEnv () изнутри сценария PHP не будет работать. А как правельно прописывать и всё остальное не рассказали. Книга чёт какая-то странная. Вроде для новечка, а без обьяснений и примеров. |
| Автор: SelenIT 21.2.2008, 03:31 | ||
| Хороших книг по PHP вообще очень мало. Лучше учиться сразу по мануалу - там и информация новее (по большей части по-русски), и http://www.php.net/manual/ru/features.file-upload.php есть... Папки создает http://www.php.net/manual/ru/function.mkdir.php. Получить строку с датой можно с помощью http://www.php.net/manual/ru/function.date.php, формат я советую взять не день-месяц-год, а год-месяц-день - так сортировка папок по алфавиту будет автоматически сортировать их и по дате. Итого в простейшем виде:
Добавлено через 1 минуту и 6 секунд Еще наверняка пригодится http://phpfaq.ru/paths |