Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Создание миниатюры на стороне клиента (https://javascript.ru/forum/misc/13978-sozdanie-miniatyury-na-storone-klienta.html)

dmitriymar 26.12.2010 15:18

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

dmitriymar 26.12.2010 15:56

канва наверное отпадает-поскольку сегодня в фф перестало работать отображение картинки если она не лежит в одной папке со страницей(гляну конечно что будет если страницу с сервера вызывать) хотя ещё с утра работало с отображаемой частью пути как с целым путём:blink:

RE_ 27.12.2010 09:18

Цитата:

Сообщение от x-yuri (Сообщение 85339)
ну, и к чему тогда вот это было?

К тому что массово заливаешь все файлы, а отдельно, скажем через флеш, "неформатные"
Цитата:

Сообщение от x-yuri (Сообщение 85339)
пишешь php-скрипт, который автоматически заливает на ftp картинки, генерирует для них эскизы и тоже заливает на ftp

Не, ну я могу взять АЦДСии, сгенерировать тумбнейлы и залить. Но во-первых, все равно нужно продумывать названия, писать скрипт добавления в БД, а во-вторых, это же убого. Хочется сделать по нормальному, извиняюсь если это желание кажется наглым :)

А я опять натолкнулся на очередной трабл:
я не могу определить можно создать эскиз нормальным способом или нет.

На входе в функцию стоит проверка на вес и размеры картинки, большинство картинок она отсеивает, но если картинка хорошо ужата, пусть и большого размера (2500х2000=500кб) то проходит как "нормальная".
php функция createimagefromstring() пытается выполнится и вылетает.
Пытался загнать ее try catch, перестает работать вообще все:blink:
загоняю в if эффекта 0.
Как ошибку отловить - понятия не имею.

x-yuri 27.12.2010 09:50

Цитата:

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

Цитата:

Сообщение от RE_
К тому что массово заливаешь все файлы, а отдельно, скажем через флеш, "неформатные"

ты можешь внятно объяснить, как файлы попадают на сервер? Только ты их туда заливаешь?

Цитата:

Сообщение от RE_
Но во-первых, все равно нужно продумывать названия

на третьей странице мы выяснили, что не все можно автоматизировать

Цитата:

Сообщение от RE_
Не, ну я могу взять АЦДСии... [но] это же убого.

я тоже так считаю

Цитата:

Сообщение от RE_
я не могу определить можно создать эскиз нормальным способом или нет.

getimagesize?

Цитата:

Сообщение от RE_
я не могу определить можно создать эскиз нормальным способом или нет.

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

dmitriymar 27.12.2010 10:07

Цитата:

Сообщение от x-yuri
Но во-первых, все равно нужно продумывать названия
на третьей странице мы выяснили, что не все можно автоматизировать

можно автоматизировать-но без сервера при этом никак
Цитата:

Сообщение от x-yuri
нормальный способ - это когда ты можешь можешь на сервере создавать эскизы для фотографий любого нужного размера

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

x-yuri 27.12.2010 10:42

Цитата:

Сообщение от dmitriymar
почему не искать варианты разгрузить сервер?

если речь идет о создании эскизов для имеющихся на сервере фотографий: потому что надо сначала, выяснить, какой эффект будет от такой разгрузки. Если человек, который считает количество знаков в имени переменной, говорит, что "У меня задачи на ресайз сотен тысяч фоток за раз, что разгребается за полдня под полной нагрзукой.", то это повод задуматься

а весь этот разговор в пределе выглядит так: "хочу разместить youtube на бесплатном виртуальном хостинге"...

Цитата:

Сообщение от dmitriymar
если можно при этом обходится более дешевым хостингом а не использовать десятки серверов

это уже уход в какие-то абстрактные материи, на который можно абстрактно ответить, что "время программиста стоит дороже". И спорить на этом уровне можно долго и нудно

dmitriymar 27.12.2010 10:48

ну да согласен.ну если програмист при этом он сам то стоит тратить время-не на трубу конечно)

RE_ 27.12.2010 15:29

Цитата:

Сообщение от x-yuri
ты можешь внятно объяснить, как файлы попадают на сервер? Только ты их туда заливаешь?

Это картинная галерея. Пока заливаю я, но предполагается, что будут заливать и обычные пользователи.
Я могу заливать двумя способами:
1) как все через форму - выбрал файл=>нажал залить.
2) залить много картинок на ftp и нажать "добавить папку с ftp"
К способу 1 можно прикрутить флеш-загрузчик. Но способ 2 все равно нужен, т.к. нужно залить около 5к файлов и предполагается заливать еще до сотни разом.
Все на любительском уровне на бесплатном хостинге (потому и ограничение памяти), хотя это не значит что я потом не докуплю платный. Просто я не особо знаком с тем как делаются проекты и думаю что по началу пусть висит на бесплатном, как доделаю, можно будет уже на платный переезжать.

Цитата:

Сообщение от x-yuri
на третьей странице мы выяснили, что не все можно автоматизировать

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

Цитата:

Сообщение от x-yuri
getimagesize

т.е. ты предлагаешь просто фильтровать большие изображения не разобравшись в причине? Мой перфекционизм негодуе!
Хотя наверно это самый легкий и правильный вариант.
Ну неужели нет более нормального решения чем костыль?

Цитата:

Сообщение от x-yuri
нормальный способ - это когда ты можешь можешь на сервере создавать эскизы для фотографий любого нужного размера

Не, ну понятно что я упираюсь в недостаток памяти. Для всех jpgов я его обошел, создавая эскизы из встроенных тумбнейлов. Осталась эта непонятная проблема.

Цитата:

Сообщение от x-yuri
"время программиста стоит дороже"

В данном случае я не только программирую, а еще и учусь, поэтому хочется сделать все по нормальному. Хотя нет, мне всегда хочется сделать все по нормальному :)

x-yuri 30.12.2010 10:08

Цитата:

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

(мысли вслух) хотелось бы знать, как их оптимально по папкам расположить...

Цитата:

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

т.е. надо, чтобы картинки заливались на ftp в оригинальном размере, а потом при "добавлении папки" создавались эскизы? И надо сделать, чтобы все эскизы создавались именно при добавлении папки? Ну, пожалуйста: создаешь все эскизы которые можешь на сервере, а оставшиеся по одному отправляешь на клиент, где flash их ресайзит и отправляет обратно на сервер

Нормальное решение: картинки ресайзятся перед заливкой на ftp, автоматически, и сразу заливаются. Тебя смущает дублирование логики? не дублируй ее: сделай чтобы скрипт и "добавление папки" использовали общий код

Цитата:

Сообщение от RE_
т.е. ты предлагаешь просто фильтровать большие изображения не разобравшись в причине? Мой перфекционизм негодуе!
Хотя наверно это самый легкий и правильный вариант.
Ну неужели нет более нормального решения чем костыль?

причина известна: закончилась память. Поищи, если хочешь...

Цитата:

Сообщение от RE_
В данном случае я не только программирую, а еще и учусь, поэтому хочется сделать все по нормальному.

надо только не ошибится в выборах критериев "нормальности" ;) как видим, на одно нормальное решение нету денег

попробуй на всякий случай ini_set("memory_limit", "...M")

RE_ 04.01.2011 17:18

Цитата:

Сообщение от x-yuri
(мысли вслух) хотелось бы знать, как их оптимально по папкам расположить...

про оптимальность думаю тут речь не идет)

Цитата:

Сообщение от x-yuri
т.е. надо, чтобы картинки заливались на ftp в оригинальном размере, а потом при "добавлении папки" создавались эскизы?

Сейчас так уже есть. Правда с некоторыми картинками бывают сбои, которые и хочется устранить.

Цитата:

Сообщение от x-yuri
Ну, пожалуйста: создаешь все эскизы которые можешь на сервере, а оставшиеся по одному отправляешь на клиент, где flash их ресайзит и отправляет обратно на сервер

Да, именно так я и собирался(юсь) сделать. Правда проблему реализации диалога с флеш отодвинула на второй план проблема невозможности отловить "неправильные" изображения.
Я склоняюсь к созданию отдельной заливки вручную.

Цитата:

Сообщение от x-yuri
Нормальное решение: картинки ресайзятся перед заливкой на ftp, автоматически, и сразу заливаются.

я не делал систему, я просто пытаюсь устранить один недостаток.

а! система shimmie2 если интересно.
Цитата:

Сообщение от x-yuri
попробуй на всякий случай ini_set("memory_limit", "...M")

попробую, хотя вряд ли на серьезном хостинге будет такая бага)


Часовой пояс GMT +3, время: 23:59.