Перейти к публикации

Имя загруженного изображения


flo.mAster

Рекомендованные сообщения

Я заметил(давно) что к названию изображения добавляюся цифры, пример: 1194271889_dle.jpg . Как изменить 1194271889 вот это перед названием файла? На другое, кпримеру на media_portal , что бы получилось вот так: media_portal_dle.jpg ? Знаю что будет вопрос типо если будет загружена картинка с наким же именем. Ответ: если будет такое имя, то что бы имя файла менялось на media_portal_dle_2.jpg или media_portal_dle(2).jpg.

Вот собственно и всё.

Ссылка на сообщение
Поделиться на других сайтах

Не понимаю нафига это делать.

Это сделано, чтобы не было совпадающих имён файлов.

Или Вы собираетесь помнить названия всех загруженных файлов, чтобы не накосячить?

Ссылка на сообщение
Поделиться на других сайтах

Знаю что будет вопрос типо если будет загружена картинка с наким же именем. Ответ: если будет такое имя, то что бы имя файла менялось на media_portal_dle_2.jpg или media_portal_dle(2).jpg

Ссылка на сообщение
Поделиться на других сайтах

Ответ: если будет такое имя, то что бы имя файла менялось на media_portal_dle_2.jpg или media_portal_dle(2).jpg

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

Да даже если простой функцией strpos() обрабатывать такое количество - это очень и очень накладно.

Ссылка на сообщение
Поделиться на других сайтах

Ответ: если будет такое имя, то что бы имя файла менялось на media_portal_dle_2.jpg или media_portal_dle(2).jpg

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

Да даже если простой функцией strpos() обрабатывать такое количество - это очень и очень накладно.

хм а смысл если в базу все пишется. ну добавится один select при загрузке картинок по поиску имени - это млин не так страшно это ведь не при отображении короткой новости запрос добавлять....

Ссылка на сообщение
Поделиться на других сайтах

Да любой из вариантов нагружает:

Достаём всё из БД и ищем фунцкией in_array().

Второй вариант, твой: Достаём из БД картинку LIKE или WHERE.

И опять же, если записей там несколько тысяч, запрос займёт не одну секунду.

Мой лично вариант, это кое что изменить в файле images.php и порядок.

define('FOLDER_PREFIX', date("Y-m")); на define('FOLDER_PREFIX', date("Y-m-d"));

Ссылка на сообщение
Поделиться на других сайтах

Да любой из вариантов нагружает:

Достаём всё из БД и ищем фунцкией in_array().

Второй вариант, твой: Достаём из БД картинку LIKE или WHERE.

И опять же, если записей там несколько тысяч, запрос займёт не одну секунду.

Мой лично вариант, это кое что изменить в файле images.php и порядок.

define('FOLDER_PREFIX', date("Y-m")); на define('FOLDER_PREFIX', date("Y-m-d"));

:blink:

я в шоке.

Достаём всё из БД и ищем фунцкией in_array(). - полный бред

Второй вариант, твой: Достаём из БД картинку LIKE или WHERE. - ну почти

where images like '%$inserts' -- и если создать индекс по полю в базе - то даже не заметишь даже если записей несколько тысяч даже миллионов.

and date between НАЧАЛО МЕСЯЦА AND текущее время -- дополнительное условие на выборку - нафиг нам старье в других папках

конечно вообще сама идея - бредовая и не нужная... Но, как я говорил, реализуемо практически все, в рамках разумного.

Ссылка на сообщение
Поделиться на других сайтах

romen, я бы сделал проще:

Допустим префикс нам нужен такой: my_cool_site.

Так вот:

my_cool_site_1454164_image_name.jpg

И никаких лишних запросов.

Ссылка на сообщение
Поделиться на других сайтах

romen, я бы сделал проще:

Допустим префикс нам нужен такой: my_cool_site.

Так вот:

my_cool_site_1454164_image_name.jpg

И никаких лишних запросов.

согласен абсолютно!!!!

но темокреатору другое хочется.

в общем пусть фломастер сам решает....

Ссылка на сообщение
Поделиться на других сайтах

Не тестировал, но полагаю:

$file_prefix = time()."_";
заменить на:
$file_prefix = 'my_cool_site_'.time()."_";
И лично тебе, что бы было легче разобраться, как и что тут:
/////////////////////////////////////////////////////////////////////////

$file_prefix   = 'my_cool_site';  // Приставка

$file_prefix  .= '_';			 // Разделитель имени от даты

$file_prefix  .= time()."_";	  // Ну и остальное, что и было в DLE

/////////////////////////////////////////////////////////////////////////

Ссылка на сообщение
Поделиться на других сайтах

Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

×
×
  • Создать...