Привет Раван,
Я нашел решение, но оно немного хакерское, поэтому я не знаю, хотите ли вы его использовать.
В приложении Flex добавьте две вещи. Сначала метод, который выглядит так:
private function initVars():void {
userid = FlexGlobals.topLevelApplication.parameters.id;
}
Затем добавьте эту строку в заголовок приложения:
creationComplete="initVars()"
Как и в оригинальном вопросе, включите файл «testy.php» в каталог Joomla. После создания сборки выпуска приложения Flex откройте HTML-файл переноса для приложения (расположенный в каталоге сборки выпуска). Измените расширение этого файла на «.php». Затем в этом недавно созданном PHP-файле добавьте следующие строки (ПРИМЕЧАНИЕ. Возможно, вам придется изменить движение каталога в соответствии со схемой каталога):
<?
include '../../joomla/testy.php';
idVar $id;
?>
В файле сборки выпуска вы найдете следующую строку:
var flashvars = {};
Flex позволяет нам включать внешние переменные в наше приложение. Итак, прямо под этой строкой добавьте новую строку, таким образом:
flashvars.id = "<?php echo $idVar; ?>";
Теперь мы сказали нашему приложению Flex включить флешвар с именем «id», и он равен идентификатору пользователя, который мы извлекли из Joomla.
В заключение, теперь вы можете использовать переменную Flex "userid" (определенную в методе Flex, которую мы написали выше) для таких вещей, как получение пользовательских данных из вашей базы данных. Я называю это решение хакерским, потому что каждый раз, когда вы создаете новую версию релиза, вы должны изменить оболочку html на php и изменить ее, как мы делали выше.
Надеюсь, это поможет.
Приветствия
Zach