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

themail

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
имя файла в базе
« : 24.10.2009, 21:37:01 »
Здравствуйте  пожалуйста!
Как понять какое было оригинальное имя картинки после импорта. В базе Datso галерее хранится исходное имя, но оно преобразилось в непонятное имя 43B40B7A503D-1.jpg, а перед закачкой назывался природа1.jpg

как мне из 43B40B7A503D-1.jpg получить старое имя?
*

beliyadm

  • Moderator
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Re: имя файла в базе
« Ответ #1 : 24.10.2009, 21:40:15 »
никак
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

themail

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: имя файла в базе
« Ответ #2 : 24.10.2009, 21:53:33 »
спасибо! буду искать другой способ сохранить имя.
*

beliyadm

  • Moderator
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Re: имя файла в базе
« Ответ #3 : 24.10.2009, 21:56:28 »
Новое имя файла отрабатывается на уровне admin.datsogallery.php функцией dgImgId
Код: php
$org_screenshot_name = dgImgId($catid, $imginfo[2]);
Можете добавить дополнительное поле в таблицу картинок где сохранять оригинальное имя файла
Код: php
@$_FILES['org_screenshot']['name']
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

themail

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: имя файла в базе
« Ответ #4 : 25.10.2009, 00:56:43 »
Да, спасибо, все сработало.
дописал третью переменную передаваемую в эту функцию, для разных способов загрузки оказались разные переменные хранящие имя файла. Все работает спасибо.
*

beliyadm

  • Moderator
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Re: имя файла в базе
« Ответ #5 : 25.10.2009, 01:01:18 »
дописал третью переменную передаваемую в эту функцию, для разных способов загрузки оказались разные переменные хранящие имя файла
тоже вариант, не подумал сразу, действительно проще :)
Картинки получаются типа 3F7A9029625F-43-originalFileName.jpg
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

nvo-nik

  • Новичок
  • 5
  • 0 / 0
Re: имя файла в базе
« Ответ #6 : 08.07.2010, 11:30:21 »
Цитировать
дописал третью переменную передаваемую в эту функцию, для разных способов загрузки оказались разные переменные хранящие имя файла

наверное одну из этих ($origfilename) пришлось использовать?
« Последнее редактирование: 14.07.2010, 00:16:46 от nvo-nik »
*

auronn

  • Осваиваюсь на форуме
  • 45
  • 2 / 0
Re: имя файла в базе
« Ответ #7 : 09.06.2011, 06:27:37 »
Та же проблема!
Можно поподробнее что конкретно прописать в  admin.datsogallery.php?
Теоретически нужно дать функции dgImgId третью переменную. Или оставить одну с оригинальным файлом.
В PHP не силен. Помогите пожалуйста.
*

themail

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: имя файла в базе
« Ответ #8 : 13.06.2011, 22:51:50 »
тут ситуация в том что имя файла не передается, а третья переменная как раз создается для ее передачи. Напишите имя файл и передайте через третью переменную.
dgImgId - этой функцией генерируется имя файла, замените ее оригинальным названием файла или скомбинируйте как сказал beliyadm чтобы исключить одинаковые имена фалов. Замените ее на передаваемую переменную и будет счастье )). Учтите что там несколько мест где требуется замена, для каждого способа загрузки своя.
*

auronn

  • Осваиваюсь на форуме
  • 45
  • 2 / 0
Re: имя файла в базе
« Ответ #9 : 14.06.2011, 08:25:42 »
тут ситуация в том что имя файла не передается, а третья переменная как раз создается для ее передачи. Напишите имя файл и передайте через третью переменную.
dgImgId - этой функцией генерируется имя файла, замените ее оригинальным названием файла или скомбинируйте как сказал beliyadm чтобы исключить одинаковые имена фалов. Замените ее на передаваемую переменную и будет счастье )). Учтите что там несколько мест где требуется замена, для каждого способа загрузки своя.
Что то не особо получается :(
Я так понял за оригинальное имя файла отвечает  $_FILES['userfile']['name']
Пробую везде в функцию dgImgId вставить эту переменную.
Примерно так:
 function dgImgId($catid, $imgext, $_FILES) {
      return $_FILES['userfile']['name'].'-'.$catid.'.'.strtolower($imgext);
« Последнее редактирование: 14.06.2011, 09:46:11 от auronn »
*

themail

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: имя файла в базе
« Ответ #10 : 15.06.2011, 22:42:57 »
проще всего передавайте имя файла сразу в функцию отвечающую за закачку фотографий
для примера
$org_screenshot_name = dgImgId($catid, $imginfo[2])
убираете полностью "dgImgId($catid, $imginfo[2])"  и делайте так
$org_screenshot_name = имя файла переданное через добавленную переменную
« Последнее редактирование: 15.06.2011, 23:07:03 от themail »
*

auronn

  • Осваиваюсь на форуме
  • 45
  • 2 / 0
Re: имя файла в базе
« Ответ #11 : 17.06.2011, 05:59:58 »
Уважаемый Themail !
Огромное Вам человеческое СПАСИБО !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Неверный тип файла. Допускаются только: JPEG, JPG, PNG и GIF

Автор maffi

Ответов: 3
Просмотров: 12761
Последний ответ 05.12.2007, 17:04:23
от shur