RTFM! статьи, советы, скрипты
::Заработок с помощью сайта ::JScript по-русски! ::Все русские мануалы::
МЕНЮ
О САЙТЕ
НОВОСТИ
СТАТЬИ
КНИГИ
АППЛЕТЫ
СВЯЗЬ

СЧЕТЧИКИ
Rambler's Top100
Рейтинг@Mail.ru
Яндекс цитирования

Генерация Flash на веб-сервере в PHP

Автор: Вячеслав Ковалев Сайт: http://www.comprice.ru/     Рейтинг: N/A из 7       <<НАЗАД
   
   Обычно при создании flash-роликов подразумевается, что они изготавливаются, а затем уже и размещаются на сайте. Практически всегда, так оно и есть. Но ведь сам Интернет предполагает некую интерактивность. И действительно, во flash существует возможность описания реакций на определенные действия пользователя. Но, вместе с тем, увеличивается объем файла, значительно усложняется программирование. А ведь как было бы удобно, чтобы flash-ролики генерировались прямо на сайте исходя из определенных условий.
   
   Вы думаете, это невозможно? Напротив, подобные средства существуют. Самое распространенное и, видимо, пока самое лучшее - это библиотека Ming для генерации анимации в формате .swf из скриптов Perl, PHP и Python.
   
   Одна из существенных проблем, которая возникает у многих, кто начинает использовать в работе данную библиотеку, то, что на данный момент она недостаточно документирована, необходимых примеров использования также наработано пока немного. Ну и в конце концов - библиотека хоть и распространяется в исходных кодах, но существуют несколько различных сборок, которые работают немного по-разному. В общем, продукт, хоть и перспективный, но еще, честно говоря, довольно "сырой".
   
   Есть еще одна проблема. Дело в том, что библиотека написана под Linux. Это, в принципе, верно. Большинство веб-серверов работают именно в Linux. Но очень часто возникает ситуация, когда желательно протестировать скрипты, использующие Ming под Windows. Ведь мало кто использует Linux дома или на работе, привычнее все же операционная система от Microsoft. Так что стандартным для многих веб-разработчиков стало использование Windows с установленным Apache, где и проводят все необходимые "полевые работы", прежде чем окончательно выложить готовый результат на веб-сервер.
   
   Для начала, прежде чем описать установку и настройку данной библиотеке, назовем сайты, где можно взять все необходимые компоненты. PHP, в том числе и для Windows, естественно, берутся на www.php.net, версии для разработчиков, включая всякие дополнительные библиотеки (в том числе и особо важный php_ming.dll) доступны на www.php4win.com. Исходные же тексты самой библиотеки можно взять на сайте группы разработчиков - www.opaque.net/ming.
   
   Теперь о настройке Apache и PHP. Известно, что PHP под Apache можно поставить двумя способами: как интерпретатор и как модуль. Чтобы использовать Ming, нужно второе. Нужно установить две библиотеки. Это php4ts.dll и php4apache.dll.
   
   Если Apache установлен в C:\Apache, то разместим библиотеки в подобающий им каталог C:\Apache\modules. Потом необходимо указать об этом в настройках веб-сервера в файле httpd.conf. Необходимо будет добавить всего одну строку к файлу:
   
   LoadModule php4_module modules/php4apache.dll
   
   А затем указать, что файлы с расширениями php, phtml, php3, php4 и phps должны обрабатываться PHP. Для этого нужно добавить следующие строки в httpd.conf:
   
   AddType application/x-httpd-php .php
   
   AddType application/x-httpd-php .phtml
   
   AddType application/x-httpd-php .php3
   
   AddType application/x-httpd-php .php4
   
   AddType application/x-httpd-php-source .phps
   
   Также, чтобы наш веб-сервер "знал", что индексные файлы могут быть теперь не только index.htm*, находим директиву DirectoryIndex и дописываем новые типы файлов:
   
   DirectoryIndex index.html index.shtml index.htm index.phtml index.php index.php3 index.php4
   
   Теперь проверяемся. Запускаем Apache. Если у вас Windows 95 или Apache запускается в консольном окне (не как сервис), то вы увидите такую строку:
   
   Apache/1.3.22 (Win32) PHP/4.0.6 running...
   
   Это означает, что все в порядке и пора приступать непосредственно к установке библиотеки Ming. Необходимо будет установить библиотеку php_ming.dll и внести соответствующие изменения в файл php.ini.
   
   В php.ini находим и изменяем следующие строки:
   
   ; Directory in which the loadable extensions (modules) reside.
   
   extension_dir=c:\apache\phpext\
   
   Эта директива указывает путь для поиска библиотек с расширениями интерпретатором PHP. В этот же каталог размещаем и сам файл php_ming.dll.
   
   После этого добавляем в конфигурационный файл следущую строку:
   
   extension=php_ming.dll
   
   Теперь, если все сделано верно, после запуска Apache, можно поместить в файл с PHP-скриптом команду phpinfo(). В результате в броузере можно будет обнаружить информацию об установленной библиотеке:
   
   ming Ming SWF output library the funk in your trunk
   
   Version 0.1.0
   
   Теперь, когда библиотека установлена, самое время понять, как ею пользоваться. Вот простейший пример скрипта, который генерирует flash-ролик:
   
   <? php
   
   $s = new SWFShape();
   
   $s->setLine(4, 0x7f, 0, 0);
   
   $s->setRightFill($s->addFill(0xff, 0, 0));
   
   $s->movePenTo(10, 10);
   
   $s->drawLineTo(310, 10);
   
   $s->drawLineTo(310, 230);
   
   $s->drawCurveTo(10, 230, 10, 10);
   
   $m = new SWFMovie();
   
   $m->setDimension(320, 240);
   
   $m->setRate(12.0);
   
   $m->add($s);
   
   $m->nextFrame();
   
   header('Content-type: application/x-shockwave-flash');
   
   $m->output();
   
   ?>
   
   Описание функций, с помощью которых можно генерировать flash, можно найти как на сайте www.opaque.net/ming., так и вместе с исходными текстами в библиотеке. Остается одно - изучить их и использовать. В результате вы сможете генерировать flash прямо на веб-сервере и вносить необходимые изменения в файлы в случае необходимости.
   
   
   


<<НАЗАД      ОЦЕНИТЬ СТАТЬЮ    ВЕРСИЯ ДЛЯ ПЕЧАТИ>>
Статья прочитана :  раз.




пейкюлю



 
 
 
 
 
pauk ©® 2000-2015. All rights reserved.
При перепечатке ссылка на сайт и указание обязательны.
Мнение администрации сайта не всегда совпадает с мнением автора.
Орфография и пунктуация - авторские.
Администрация не несет никакой ответственности за использование материалов.
.
Protected by Copyscape DMCA Takedown Notice Infringement Search Tool