2003 г

Загрузка текста и переменных во Flash

(C). rastyle.com, Рубен Сардарян

Как таковой возможности загружать текст во Flash нету, но имеется возможность загружать переменные извне (в том числе и из текстовых файлов). Переменные передаются в стандартном формате GET-запроса:

[переменная]=[значение]&[переменная]=[значение]&...&...

- в таком виде формируются пары переменная-значение, разделённые символом амперсанда ("&"). Flash может также принимать переменные, сформированные серверными сценариями (PHP, ASP, JSP, CGI, Cold Fusion и т.п.). Но об этом пойдёт речь ниже. Сейчас же продемонстрируем загрузку текста (и почему только текста? да любых переменных! :) из обычного (текстового :) файла.

Для начала, сформируем текстовый файл, который нам предстоит загрузить. Он должен состоять из пар переменная=значение, разделенных амперсандом. Амперсанд определяет конец значения переменной, так что перед ним не должно быть пробелов или символов перевода каретки (если, конечно, это не входит в ваши планы). Вот пример содержимого текстового файла, который можно дать Flash на загрузку:

myText=This is the text to be loaded to Flash.&myValue=123.45

Сохраняем этот файл под именем "vars.txt".

Теперь создадим Flash файл, в который будет загружаться этот файл. Нам потребуются текстовые поля с именами myText и myValue и кнопка, которую мы будем использовать, чтобы инициировать загрузку:

Нам нужен только очень простой код для кнопки:

on(release) {
    loadVariables("vars.txt", "_root");
}

Как вы догадались, всё выполняет функция loadVariables(). Рассмотрим её подробнее.

loadVariables() служит не только для загрузки переменных из внешних источников, но и для передачи переменных из Flash в серверные скрипты или другие ролики Flash.

Формат фунцкции loadVariables() следующий:

    loadVariables("url", level/"target" [, variables]);

url - абсолютная или относительная ссылка на файл, из которого/в который будут посылаться данные.

level - номер уровня, на который будут загружены переменные. Чтобы указать числовое значение, нужно использовать функцию loadVariablesNum(). В этой же функции можно использовать идентификаторы уровней (например, loadVariablesNum("vars.txt", "_level0") для загрузки на 0-й уровень).

target - идентификатор клипа (movie clip), в который загружаются переменные.

Указывается либо идентификатор уровня, либо идентификатор клипа. Нельзя указать оба параметра одновременно.

variables - необязательный параметр, используется при посылке переменных, указывает метод посылки: GET или POST.

В нашем примере, мы загружали переменные из текстового файла vars.txt в основной объект Flash-ролика: _root.

Скачать файлы данного урока: load_text.zip (3 k)

В следующем уроке рассказано как можно передавать данные из Flash в сценарий PHP.

Удачи!