Автор Тема: Автопереименование апложенных файлов  (Прочитано 4989 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yourock

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Народ, выручайте! Целый день сижу над такой проблемой:
не могу нормально загрузить и переименовать файл...
Есть форма загрузки фотографий. Допустим, что локальное имя файла - blablabla.jpg
Информация о фотках хранится в БД. ID для фоток генерится автоматически.
Допустим, что ID очередной загружаемой фотки стал равен 38.
Суть проблемы в том, что не получается переименовать blablabla.jpg в 38.jpg
После ввода данных в БД делаю апдейт для переименования имени файла по mysql_insert_id().
А вот с переименованием самого файла запарился...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #1 : 04 Сентября 2005, 08:31:38 »
И что именно у тебя не получается?
и зачем делать какие-то апдейты, если всё делается сразу при загрузке?

Оффлайн Greg

  • пинёг
  • Ветеран
  • *****
  • Сообщений: 618
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.bsfera.ru
Автопереименование апложенных файлов
« Ответ #2 : 04 Сентября 2005, 13:34:37 »
rename($oldfile$newfile);

$oldfile можно получить из $HTTP_POST_FILES[]
Пространные размышления об ИТ и все что вокруг

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #3 : 04 Сентября 2005, 13:52:10 »
Цитировать
Greg:
$oldfile можно получить из $HTTP_POST_FILES[]

а не подскажешь - ЗАЧЕМ?

Оффлайн Greg

  • пинёг
  • Ветеран
  • *****
  • Сообщений: 618
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.bsfera.ru
Автопереименование апложенных файлов
« Ответ #4 : 04 Сентября 2005, 14:15:39 »
Цитировать
а не подскажешь - ЗАЧЕМ?
просто так... :)

что тогда перименовывать-то?
Пространные размышления об ИТ и все что вокруг

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #5 : 04 Сентября 2005, 14:16:41 »
вот именно.
этот вопрос я и задал автору.
теперь жду ответа.

Оффлайн AlieN

  • Абыр!=)
  • Ветеран
  • *****
  • Сообщений: 1315
  • +0/-1
  • 2
    • Просмотр профиля
Автопереименование апложенных файлов
« Ответ #6 : 04 Сентября 2005, 20:08:46 »
Допустим у тебя такая вот форма

<Form>
<
input type="file" name="blabla">
</
form>


То такую вот штуку делать нада:

$id
=mysql_insert_id();
if(
is_uploaded_file($blabla)){
move_uploaded_file($blabla,"path_to_porno_images/$id-big.jpg");
}
The Chemical Brothers - Hey Boy Hey Girl (User Friendly Mix)
Peter Presta pres - Set Sail(Peter Presta Apple Jaxx Dub) She S.Sunshine Feat Mila - Bring The Beat Back (Club Mix) Jerry Ropero - Home Alone (Dub Mix)

Оффлайн Yourock

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #7 : 04 Сентября 2005, 21:11:26 »
Да. Именно так и делаю. Только попробуйте сделать на своем локалхосте следующие манипуляции:
загрузка фотографии с именем blablabla.jpg в папку photos/ с именем 38.jpg (38 - это автоматически генерируемый ID фотографии). То есть фото должно лежать по адресу photos/38.jpg При этом в базе должно быть прописано имя файла (у меня это строка filename) как 38.jpg (ну и ID соответственно равное 38)

P.S. Аплод делаю так:
mysql_query("UPDATE photos SET filename=\\"".mysql_insert_id().".jpg\\" WHERE id=".mysql_insert_id()."") or die(mysql_error());

Оффлайн AlieN

  • Абыр!=)
  • Ветеран
  • *****
  • Сообщений: 1315
  • +0/-1
  • 2
    • Просмотр профиля
Автопереименование апложенных файлов
« Ответ #8 : 04 Сентября 2005, 22:59:19 »
Yourock
А зачем вообще в базу дописывать расширение?:)

По-поему на выводе одного ID хватит ;)
The Chemical Brothers - Hey Boy Hey Girl (User Friendly Mix)
Peter Presta pres - Set Sail(Peter Presta Apple Jaxx Dub) She S.Sunshine Feat Mila - Bring The Beat Back (Club Mix) Jerry Ropero - Home Alone (Dub Mix)

Оффлайн Yourock

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #9 : 05 Сентября 2005, 00:03:27 »
AlieN
1) по поводу mysql_insert_id:
Все бы хорошо, да вот только проверка аплодинга проходит ДО того, как инфа заносится в БД и появляется тот самый ID, вытекающий в mysql_insert_id :)

2) по поводу "просто ID":
Конечно можно по ID определять имя файла. Суть даже не в этом. В базу-то filename вносится...
НЕ МОГУ ПЕРЕИМЕНОВАТЬ загруженный файл. Вот в чем косяк...

Оффлайн Yourock

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #10 : 05 Сентября 2005, 00:11:42 »
Всем спасибо за обсуждение (особенно AlieN\'у - натолкнул на мысль).
Решение найдено. Тему можно закрывать.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Автопереименование апложенных файлов
« Ответ #11 : 05 Сентября 2005, 01:24:55 »
ну наконец-то.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28