alexey

Помещать изображения в подпапку

Recommended Posts

Добрый день,

как я обнаружил, загруженные к объявлению изображения помещаются в корень папки с изобажениями, что в итоге при большом кол-ве объявлений приведет к слишком большому кол-ву файлов в одной папке. В зависимости от кол-ва объявлений и числа фото к каждому объявлению выходит около 1 млн-2 млн картинок расположенных в одной папке. Как показывает практика например на виндовсе такую папку открыть просто не получится, или как минимум будет открываться долго.  Даже при нескольких тысячах начинается торможение.

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

 

Нужно следующее:

при добавлении например фотографий d35ztr.jpg и g7hid.jpg они помещались соответственно в

img/data/d/3/d35ztr.jpg

и

img/data/g/7/g7hid.jpg

 

где img/data это путь по умолчанию, как я понимаю и если не ошибаюсь

 

То есть надо чтобы скрипт создавал две вложенных подпапки на основе  двух первых символов имени файла и туда помещал уже изображение. Собственно сам скрипт подобной работы у меня есть, заказывал как-то фрилансеру, чтоб раскидать файлы по подпапкам, сделали за час-два (а вы мне говорите что неизвестно когда сможете подобные изминения внести в код) Вопрос как работает ваш скрипт и где это находится

 

Я задавал вопрос разработчикам по поводу изминения функционала, но там говорят что если такие изминения и будут то очень не скоро, поскольку я один кто нуждается в данном изминении.

Поэтому

во-первых, кто видит смысл и необходимость для себя подобного изминения, напишите разработчику об этом (или же здесь в теме)

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

Я спросил Дмитрия, он подсказал

/apps/system/lib/sitebill.php
function makePreview ( $src, $dst, $width, $height, $ext='jpg', $md=0 )

 

Но здесь я вижу только что задается ширина и высота изображения, а не его перенос.

 

Спасибо

Поделиться сообщением


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

Создание фото или как вы выразились (перенос) делается в этой функции тут

        	imageCopyResampled($tmp_img, $source_img, 0, 0, $width_offset, $height_offset, $dest_width, $dest_height, ($equal_width), ($equal_height));

Поделиться сообщением


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

сделали за час-два 

 

Проблема не в том, что бы разложить по папкам, а в том, что потом с ними делать и как эти картинки оттуда вынимать для шаблонов списков, просмотров, выводов в колонках, всяких экспортах в эксели, пдфы и хмл. Это ведь тоже надо прописать, что бы код знал КАК сформировать путь к файлу с картинкой. И что бы знал как удалить все картинки, привязанные к данному объявлению.

А просто по папкам кинуть - это да, делается быстро.

Поделиться сообщением


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

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас