PDA

Просмотр полной версии : Как передать значение переменной наружу?


In8Finity
25.12.2013, 19:49
Подскажите, как наиболее просто передавать очки из игры наружу из флеша?

К примеру, у меня есть переменная myScore, которую как-то надо публиковать на сайте, на котором будет флешка размещена. Готового API нет, поэтому пытаемся придумать что-то сами.
Получается, на мой взгляд, пока не очень.
Сейчас так:
Сначала в html в теге object я добавляю строку
<param name="flashvars" value="url=http://www.sitename.com/1/2/3/" />
Потом веб-програмист пишет мне так:
> а потом ты просто делаешь get запрос на эту урлу и в параметры ложишь myScore=12345
> не знаю как там у вас client.get(url, data={"myScore": 12345})

И я вот тоже не знаю.
Подскажите, может быть есть способ полегче или же как реализовать то, что он мне написал?

Isfet
25.12.2013, 20:11
хранить очки в базе данных, и брать их оттуда а не из флеша.

а вообще отправлять из флеша в php файл get-запрос так:


var urlLoader:URLLoader = new URLLoader();
var sendVariables:URLVariables = new URLVariables();
sendVariables.myScore = String(myScore); //тут ваш счет
var req:URLRequest = new URLRequest("http://www.bla.ru/script/file.php"); //сюда путь к вашему php-файлу
req.method = "get";
req.data = sendVariables;

urlLoader.load(req);
urlLoader.addEventListener(Event.COMPLETE, onLoaded);

private function onLoaded(event:Event):void {
trace("Отправлено"); // тут можно проверять на ошибки
}


а вообще не понятна суть вопроса, наружу - это куда? Чтобы пользователи захожя на сайт видели
максимальные очки по какой-то игре?? или после того как пользователь закончил играть на странице с флешкой появился счет? или еще варианты?

In8Finity
25.12.2013, 21:57
Всё верно. В конце уровня переменной myScore присваивается некоторое значение.
И надо, чтобы это значение уходило в базу на сайт и там потом где-то отображалось.

И тогда вопрос ещё небольшой.
Как синтаксически правильно написать???
Я получаю некоторый урл снаружи вот такой строкой
будет ли работать, если я в строке с урлом сделаю так:

var req:URLRequest = new URLRequest(this.loaderInfo.parameters["myUrl"]);

caseyryan
25.12.2013, 23:17
будет ли работать, если я в строке с урлом сделаю так:
Будет, если в переменную myUrl передается действительный url
Но лучше сначала это сохранить в переменную, сделать проверку ее значения, и только после этого делать запрос

In8Finity
07.03.2014, 17:08
> Но лучше сначала это сохранить в переменную, сделать проверку ее значения, и только после этого делать запрос

Можно ли подробнее, как это сделать.
Столкнулся с проблемой. В Chrome url передаётся нормально, а в FF и IE, видимо, какие-то проблемы и на этом месте всё виснет.
Подскажите, как этого избежать?