Класс для загрузки изображений на сервер. Часть 2

Продолжаю статью для совместного перевода. Пишите либо в комментах, либо в личку. Я по-ходу дела буду обновлять саму статью.

( Под катом установки для манипуляций с подключенной библиотекой GD2+. )

Класс для загрузки изображений на сервер. Часть 1

Надо создать галерею, да ещё сделать надпись на изображении аля водяной знак, надо загрузить аватару? — не вопрос, предлагаю обратить внимание на универсальный класс для загрузки файлов class.upload.php. Сложно придумать функцию, которая не была бы встроена в это чудесный класс.

Итак, у нас есть самая простая форма:
<form enctype="multipart/form-data" method="post" action="upload.php">
<input type="file" size="32" name="image_field" value="">
<input type="submit" name="Submit" value="upload">
</form>

Прошу обратить внимание на multipart/form-data, без этого не будет сформирован ассоциативный массив $_FILES['image_field'].

Под катом привожу небольшой пример использования и перевод (неполный) основных операторов. Требуется помощь в полном переводе.

( Читать дальше )

Ложь, наглая ложь и статистика

Недавно вышла новая версия Joomla 1.5.19. Разработчики рекомендуют обновиться, так как программисты устранили четыре уязвимости, позволяющие злоумышленникам осуществлять XSS-атаки (Cross-Site Scripting) и производить взлом сайтов с использованием так называемой SQL-инъекции (SQL Injection).

Лирическое отступление:
«Ложь, наглая ложь и статистика» (полный вариант: Существуют три вида лжи: ложь, наглая ложь и статистика, англ. There are three kinds of lies: lies, damned lies, and statistics) — высказывание, приписываемое премьер-министру Великобритании Бенджамину Дизраэли, а известность оно получило благодаря Марку Твену после публикации «Главы моей автобиографии» в журнале North American Review 5 июля 1907 г.: «Цифры обманчивы, — писал он, — я убедился в этом на собственном опыте; по этому поводу справедливо высказался Дизраэли: „Существует три вида лжи: ложь, наглая ложь и статистика“». Однако этой фразы нет в работах Дизраэли. Также она не была известна ни при его жизни, ни вскоре после смерти. С точки зрения современных представлений наиболее вероятной кандидатурой на авторство является Чарльз Дилк (1843—1911).


А теперь немного «статистики»:

( Читать дальше )

Прикольная задачка. Чисто на заметку для собеседований )

В общем ситуация такая. Сегодня по работе столкнулся. Если очень просто, то есть клиент флексовый и есть сервер (кажется .NET).

На клиенте происходит что то типа такого


  .....
   for (var i:int=0; i < 100; i++)
   {
     .....
     remoteObject.getResultFromService(new mx.rpx.Responder(resultHandler, faultHandler);
   ....
   }
   ....


То есть заходим в цикл, что то там делаем и инвокаем по результату этого того что то там на сервере ))))

Внимание знатоки ))) Сколько будет http/amf запросов )? Для тех кто знает что такое флеш — ответ скорее всего очевиден, но для того кто плавает, как показала практика, это ловушка которая очень сильно влияет на производительность всей системы.

Любимые цитаты и высказывания о дизайне и дизайнерах

«Be the change you want to see in the world»

«Designers are meant to be loved, not to be understood»

«Don’t try to be original, Try to be GOOD»

«Good design is obvious, Great design is transparent»

«Good Design is all about making others feel like idiots»

«Когда мне говорят, что красный с зеленым не сочетаются, я сатанею. Посмотри на грядку клубники, дундук!»

(Рома Воронежский)

«Люди игнорируют дизайн, который игнорирует людей»

(Химеро)

«Хороший дизайн виден сразу. Отличный дизайн незаметен»

(Спарано)

«Веб-дизайнер может сделать четыре вещи, чтобы выжить в кризис: сделать хорошую работу, понизить цену, сократить расходы, и быть уверенным, что он общается со СВОИМ клиентом»

(Зельдман)

«Быстро, дешево и хорошо — из этих трех вещей нужно всегда выбирать две. Если быстро и дешево, это никогда не будет хорошо. Если это дешево и хорошо, никогда не получится быстро. А если это хорошо и быстро, никогда не выйдет дешево. Но помни: из трех все равно придется всегда выбирать две».

(Том Уэйтс)
  • +1
  • 16 июля 2010, 13:02
  • Olga
  • 2+2

special for PigmaLion (About Flex)

Adobe Flex — технология для создания Rich Internet Applications. Flex — это родственная Flash технология, основанная на описании интерфейса приложения (и обработчиков событий, связи источников данных с объектами и т. п.) с помощью диалекта XML — MXML. Flex приложение может компилироваться на сервере (для этого потребуется mod_flex.so или mod_flex.dll в зависимости от ОС и вебсервера), а может — из IDE или непосредственно из командной строки с помощью компилятора mxmlc (начиная с Flex 2), как и во Flash, результатом является файл swf, исполняемый Flash Player.

Flex — это большой набор классов (Flex SDK), содержащий многие не вошедшие во Flash компоненты. Достоинства Flex тесно связаны с его спецификой, MXML. Например, Flex компоненты для построения графиков сделаны удобными для использования и выглядят очень приемлемо для использования «как есть».

Интегрированная среда разработки Flex Builder 2, которая обеспечивает более высокую производительность, создана на свободно распространяемой платформе разработки Eclipse. Поскольку многие разработчики уже используют Eclipse при программировании на Java, Flex Builder 2 предоставляет им знакомую среду для создания и Java-приложений, и полнофункциональных клиентов.

Кроме того, возможна разработка Flex (ActionScript 3) проектов с помощью средств OpenSource — в частности, FlashDevelop (Windows), axdt, flex2ant (оба последних средства являются плагинами Eclipse и кроссплатформенны, однако по удобству работы с ними значительно уступают FlashDevelop).

Flex 2, помимо скорости разработки, предоставляет полные мультимедийные возможности Flash Platform: включая потоковое видео, звук (в том числе и программный), бинарные сокеты и большое число прочих новых возможностей ActionScript 3.

Благодаря Flex 2, веб-сервисы могут использоваться для связи с сервером при частом обращении к данным при небольшой полезной нагрузке. Для более ресурсоемких приложений Adobe предлагает программное обеспечение Flex Data Services 2 Express, которое может поддерживать связь между источником данных и уровнем представления. Flex Data Services 2 способен передавать данные с сервера на клиент. Серверный компонент может, например, извлечь данные из серверного приложения SAP и переслать их клиенту. Теперь функции Flex Presentation Server встроены в Flex Data Services.

Ещё одно неоспоримое достоинство технологии Flex, тесно связанное с достоинствами ActionScript 3 — это возможность OpenSource разработки Flash-проектов без использования Adobe Flash IDE, с помощью «чистого» программирования. При этом Flash-разработка становится принципиально доступна в том числе и на платформе Линукс. (Первые возможности такого рода были предоставлены при создания компилятора ActionScript 2 [mtasc mtasc.org/], но ActionScript 3 позволил сделать Flash-программирование гораздо более стройным и логичным).

Flex является высокоэффективной средой разработки с открытым кодом для создания и обслуживания веб-приложений, совместимых со всеми наиболее распространенными обозревателями, платформами персональных компьютеров и версиями операционных систем. Создание приложений Flex возможно только в среде Flex, однако ПО Adobe Flash Builder™ (ранее известное, как Adobe Flex® Builder™) позволяет ускорить разработку программного обеспечения при помощи таких функции, как интеллектуальное создание кода, интерактивная пошаговая отладка и визуальное проектирование макета интерфейса пользователя.

Затяжной отпуск без энтузиазма


Когда из отпуска вернётесь,
Вам, безусловно, станет ясно,
Как ни печально, – на работе
Без вас обходятся прекрасно.


( Читать дальше )

Policy file logging for the Flash player

Ошибка

Server reported an error Send failedChannel.Security.Error error Error #2048: Security sandbox violation:

многим кто сталкивался с Flex/Flash знакома. 2 минуты поиска в гугле и причина будет установлена. В 98% случаев будет проблема или с отсутствием crossdomain.xml или же с его неправильной конфигурацией. Но в 2% случаев — нейросекс. И тут на подмогу приходит Policy file logging for the Flash player.

Как включить?

Установите дебаггер версию Флеш плеера от 9,0,115,0. Найдите файл конфигурационный файл mm.cfg. Этот основной конфиг для дебаг версии флеш плеера инициализируется при запуске. Как правило этот файл находится в корневой директории пользователя.

Windows: C:\Documents and Settings\username
Windows Vista: C:\Users\username
Macintosh: /Users/username
Linux: /home/username

Если же его нет, просто создайте его и добавьте следующие строки:

PolicyFileLog=1 # Enables policy file logging
PolicyFileLogAppend=1 # Optional; do not clear log at startup

Если PolicyFileLogAppend стоит как 0, каждый новый запуск SWF файла будет перезаписывать содержимое лога.

Теперь собственно файл с логами — policyfiles.txt. Он не обязательно существует и плеер после включения логирования создаст его. Предполагаемые пути:

Windows: C:\Documents and Settings\username\Application Data\Macromedia\Flash Player\Logs
Windows Vista: C:\Users\username\AppData\Roaming\Macromedia\Flash Player\Logs
Macintosh: /Users/username/Library/Preferences/Macromedia/Flash Player/Logs
Linux: /home/username/.macromedia/Flash_Player/Logs

Запускаем любую флешку в дебаг плеере, закрываем плеер и идем в директорию с логами (см. выше).

Полезная фича. Подробная документация — www.adobe.com/devnet/flashplayer/articles/fplayer9_security_05.html
Не забываем смотреть статистику:

Яндекс цитирования