В прошлом уроке мы рассмотрели возможность загрузки данных во Flash. Сейчас мы научимся посылать данные из Flash во внешние сценарии, или в другие ролики Flash.
Как и в прошлом уроке, нам потребуется .swf файл, из которого мы будем посылать данные. Пусть он содержит два поля для ввода переменных и пару кнопок, при нажатии на которые будут посылаться данные:
Послать данные можно как с помощью функции loadVariables(), описанной в прошлом уроке, так и с помощью знакомой многим getURL(). В нашем примере одна кнопка использует первую функцию, другая - вариант с getURL(). Разница этих методов состоит в том, что loadVariables() вызывает скрипт, без отображения его в окне браузера, а getURL() открывает свою цель в браузере и передаёт ей переменные.
Итак, в ролике присутствуют два текстовых поля для ввода с именами переменных myText и myValue. По умолчанию там записан текст "поле myText" и "поле myValue". Левая кнопка вызывает PHP скрипт "target.php" и передаёт ему значение переменных. Правая - открывает файл "target2.php" и тоже передаёт ему данные из .swf. Код содержащийся в файлах приводится ниже.
Сценарий target.php сохраняет содержимое переменной myText в файле "result", позволяя тем самым проверить работу loadVariables(). Сценарий target2.php просто выводит значиния myText и myValue в окно браузера. Как видите, переменные напрямую передаются в PHP скрипт и имеют там такие же имена, как и во Flash.
Точно так же можно получать доступ к переменным из любого серверного приложения, имеющего интерфейс CGI. Например, в Perl можно использовать конструкцию param("myText"). В ASP доступ к переменным можно получить через Request.QueryString("myText").
Использованные в уроке файлы можно забрать здесь: (3 k)