Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   передача var из swf в swf с помощью PHP (http://www.flasher.ru/forum/showthread.php?t=136221)

kodemak 12.02.2010 12:32

передача var из swf в swf с помощью PHP
 
как передать переменные из одного ролика в другой с помощью php
если можно код?

Код:

<?php
$text = $_POST['text'];
echo "&text="$text."&";
?>

таким способом не получается :rtfm:
это может передать переменные из одной swf'ки в туже самую а мне нужно чтобы и другая как то чувствовала..
помогите нубу:confused:

mooncar 12.02.2010 12:52

Смотрите класс ExternalInterface.
Методом ExternalInterface.call вызываем функцию JavaScript, предавая ей параметром нужное значение.
Оная функция передает это значение другой флешке, для этого в этой другой флешке используется метод ExternalInterface.addCallback.
Примеры взаимодействия есть тут на форуме.

iflamberg 12.02.2010 12:53

1) первый мувик отсылает данные на сервер. сервер сохраняет их в базе или в файле
2) другой мувик запрашивает какие изменения произошли (он должен это делать по таймеру, раз в 10 секунд, например)
3) сервер отсылает второму мувику изменения и помечает как-то, что эти данные уже отосланы

а ExternalInterface - это не то. это если у вас две флешки на одной странице.

mooncar 12.02.2010 13:04

Да, действительно, реализация зависит от того, что представляет и где находися вторая флешка.

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

Если первый вариант, то лучше писать значение в переменную сессии, чтобы не создавать энное количество записей в БД или в текстовых файлов. Тогда для каждого посещения будут индивидуальное значение. Механизм сессии эту задачу сильно упрощает.

Добавлено через 2 минуты
Цитата:

Сообщение от iflamberg (Сообщение 885822)
а ExternalInterface - это не то. это если у вас две флешки на одной странице.

Совсем не обязательно. С помощью ExternalInterface.call функция JS может получить значение, а при переходе на другую страницу передать это значение другой флешке, например, через GET-параметр в адресе ссылки на другую страницу.

kodemak 13.02.2010 11:28

я сделал просто ))

отправляю сообщение серверу он сохраняет это в в файл
Код:

&mess=hello my friend&user=friend&
флешка каждые 3 секунды 10с обращаетца к блокноту
Код AS1/AS2:

var b = setInterval(cha, 10000);
function cha() {
        loadVariables("messenger.txt", _root);
        if (geting == buffer) {
                stop();
        } else {
              сообщение
              buffer = geting;
        }
}

только если много людей сразу пытаются загрузит этот файл одновременно он какг бы исчезает на время (error 404) имеет ли смысл сделать много блокнотов а в PHP'ке
написать код записи во все TXT'ки?

Hauts 13.02.2010 12:07

Вложений: 1
Возможно, не совсем по теме.

Я как-то делал из спортивного интереса флэшку, в которой на белом фоне лежали черный и серый кружки. Щелкая мышкой в любом месте, черный кружок перемещался к координатам мыши. Запуская эту флэшку в двух браузерах (два окна с одинаковыми страницами), можно было в режиме реального времени перемещать черный кружок, при этом во втором окне серый кружок перемещался в то же положение (с некоторой задержкой, конечно).

Принцип работы простой: постоянный обмен данными о координатах через пхп. Когда флэшка запускается, она получает свой id, с которым потом и обращается к пхп для сохранения координат свого кружка. Данные записываются в базу mySQL. По необходимости, все поля, которые существуют больше пяти секунд, удаляются из таблицы.

Такой принцип хорошо работал только первые минуты, потом начинало сильно тормозить.

Выглядит это все так:
Вложение 23797

Так вот. Я не претендую на оригинальность и, уж тем более, на качество реализации (потому, что делал для себя), но могу выслать все исходники, если кому нужны. Думаю, что для темы "передача var из swf в swf с помощью PHP" это вполне сойдет.

mooncar 13.02.2010 12:15

Автор, вы не чат ли задумали?
Тут это обсуждалась неоднократно.


Часовой пояс GMT +4, время: 16:48.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.