Хроники лаборатории
Приложение «Раздача аватарок». Изнанка.

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

Итак, приложение «Раздача аватарок» суть фильтр. В базу заносится ссылка на картинку и... В принципе, это самое трудоемкое, что делает приложение. Конечно, перед занесением в базу картинки скрипт ее проверяет на адекватность (размер - не более 1Мб, тип - GIF или JPEG). Остальное делает скрипт, выдающий пользователю картинку.

Ссылка на картинку-аватарку в приложении выглядит так:
http://vexer.ru/liru/liruavs/ссылка_на_картинку
Где ссылка_на_картинку - ссылка без «httр://»
Таким образом выдающему скрипту передается ссылка на картинку. Скрипт снова проверяет картинку на адекватность, при необходимости пропорционально уменьшает до требуемых 150x150 пикселей (при уменьшении, правда, большие анимированные картинки становятся статичными) и выдает пользователю. В случае неадекватной картинки ссылка на нее стирается из базы, а пользователю показывается надпись «аватарка не найдена». Собственно, это все.

Непосредственно об адекватности картинки скрипт судит по передаваемым метаданным:

PHP:

$fi 
fopen($file_name,"r");
$inf stream_get_meta_data($fi);
fclose($fi);

$size_file=0;
$type_file="";

foreach(
$inf["wrapper_data"] as $vv) {
  if (
stristr($vv,"content-length")) {
    
$v explode(":",$vv);
    
$size_file=trim($vv[1]);
  }
  if (
stristr($vv,"content-type")) {
    
$v explode(":",$vv);
    
$type_file=strtolower(trim($vv[1]));
  }
}



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


RSS HTML рубрики: приемчикиjuick twitter facebook вконтакте

Случайные записи впридачу:
Конвертер видеоссылок, сервис. (LI.ru)
Кстати о снеге... (обои)
Еще чуток про музыку (приемчики)

Симпапулькин (06 авг 2008г, 18:41) [ссылка на комментарий]

Стоит попробовать.
Nks (08 авг 2008г, 08:07) Комментарий к Приложение «Раздача аватарок». Изнанка. [ссылка на комментарий]

/*краду в базу знаний*/

Программистам о программистах на Progger.Ru
V.exeR (08 авг 2008г, 08:10) [ссылка на комментарий]

Накукрыскин: на здоровье. =]

Trash80 - Say Goodbye
-hunter- (15 авг 2008г, 11:27) [ссылка на комментарий]

Хм интересно! То что на сервере ничего не хранится это огромный плюс. А если картинка большая, выдающий скрипт ее "на лету" уменьшает?
V.exeR (15 авг 2008г, 13:58) [ссылка на комментарий]

-hunter-: именно, я же это упоминаю.
Asunder (03 сен 2008г, 12:55) [ссылка на комментарий]

V_exeR, интересно на Ли.ру такой же фильтр?
V.exeR (05 сен 2008г, 22:18) [ссылка на комментарий]

Asunder: фильтр - это нечто, пропускающее через себя материал. На ЛИ.ру при загрузке аватар они сохраняются на сервер. То есть хоть они и тоже движком ЛИ.ру уменьшаются и все такое, но это не фильтр.
Asunder (06 сен 2008г, 08:37) [ссылка на комментарий]

V_exeR, под словом "фильтр" я подразумевал скрипт проверки
проверка по типу файла: gif или jpeg, по весу, по габаритам...

p.s. не знал, что ли.ру теперь сама аватары уменьшает
раньше там стояло ограничение по габаритам
V.exeR (07 сен 2008г, 08:51) [ссылка на комментарий]

Asunder: это не фильтр, это так и называется - проверка.

Насчет ЛИ.ру - я могу ошибаться, давно не загружал никаких аватар, у меня одна, с самого начала.
Откуда вы?   

Войти через loginza
Оставлять комментарии могут только
имеющие свой ЖЖ-, ЛИру-аккаунт или
еще какой openID (как так?).
Подписаться


Рубрики:

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


Разное:

Полка с фильмами
Книжная полка
Полка с играми
Избранное


Календарь записей

2020 (7)
июнь (1)
май (1)
апрель (2)
март (2)
февраль (1)
2019 (3)
2018 (1)
2017 (10)
2016 (12)
2015 (3)
2014 (12)
2013 (10)
2012 (17)
2011 (84)
2010 (172)
2009 (228)
2008 (263)
2007 (154)
2006 (4)
2005 (1)
2004 (1)
2002 (1)
2001 (9)
2000 (9)
1999 (1)
© сайт разработан и поддерживается мной.