Как я могу загрузить SWF-файл в другой SWF-файл с помощью php readfile и сохранить параметры URL? - PullRequest
0 голосов
/ 11 марта 2011

Я использую php для чтения файла (указанного cookie на компьютере пользователя) с функцией readfile ().файл, который я читаю, представляет собой флэш-файл actionscript 3, который зависит от файла конфигурации, добавляемого к URL для правильной работы.

ex: http://www.pathToFlash.com/file.swf?CONFIG_URL=http://www.pathToConfig.com/config.xml

Когда я использую readfile - заголовкиустановлен правильно, и SWF возвращается в браузер, который затем запускает его.Я обнаружил, что с помощью этого метода файл конфигурации (CONFIG_URL) должен быть добавлен к URL-адресу php-файла, чтобы он был правильно прочитан swf - поскольку swf считает путь к php-файлу своим собственным.

Это нормально, когда речь идет только об этих двух элементах - но при загрузке комбинации php> read (swf) в другой swf - swf read читает URL-адрес, который является нулевым (используя this.root.loaderInfo.url) и, следовательно, не работает должным образом, так как нет файла конфигурации (CONFIG_URL).

Мой вопрос: как я могу загрузить SWF-файл со страницы php (используя readfile, fopen и т. д.)и передать в $ get параметры?

1 Ответ

0 голосов
/ 13 марта 2011

Прежде всего: this.root.loaderInfo.url должно быть: this.root.loaderInfo.parameters.url.

Второй из всех root.loaderInfo.parameters доступен только из root swf. Это означает, что вы не можете сказать внутри swf php: load.php? Swf = second.swf & someParameter = 1234 и проанализировать какой-либо параметр для загруженного swf напрямую.

Решение (есть более одного):

  1. Вам нужно установить все эти параметры для root.swf (при загрузке)

mainConfig = XML / config.xml secondSWFconfig = XML / secondconfig.xml

и т. Д. *

  1. во second.swf, который будет загружен root.swf, вам нужно создать функцию:

    набор параметров публичной функции (значение: объект) { // здесь все назначение параметров }

  2. В функции root.swf, которая запускается после загрузки second.swf:

    закрытая функция onSecondSWFLoaded (e: Event): пусто { e.currentTarget.content ['parameters'] = this.root.loaderInfo.parameters; }

И тогда во втором SWF вы получите эти параметры и после них вы можете запустить все, что вам нужно.

С уважением.

...