PDA

Просмотр полной версии : Спросить у пхп скрипта переменную, из локально запущенной флешки.


Tails
01.06.2010, 13:35
Можно ли както спросить у пхп скрипта значение переменной, если флешка запущена локально на компьютере, тоесть не через браузер а просто тупо запущена через флеш плеер ? (интернет включён).
Я в пхп нуб, непосылайте плз в хелп или ещё куда :)

mooncar
01.06.2010, 13:41
Можно. Используйте LoadVars.

Tails
01.06.2010, 13:46
1.Как должен быть офоппмлен правильно пхп скрипт ?
2.Как правильно спросить у него переменную из флеши ?

Первый раз делаю взаимодействие с внешними данными (ну кроме текстовиков)

mooncar
01.06.2010, 13:51
PHP будет примерно так:
<?php
//вычисления
//$var1 = ....
//$var2 = ....
echo 'var1='.$var1.'&var2='.$var2;
?>
Код AS:
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
if (success) {
trace(this.var1);
trace(this.var2);
}
};
my_lv.load('http://www.site.com/script.php');


Дальше почитайте что-нибудь про LoadVars.

Tails
01.06.2010, 13:54
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
if (success) {
trace(this.toString());
} else {
trace("Error loading/parsing LoadVars.");
}
};
my_lv.load("http://www.helpexamples.com/flash/params.php");

допустим запишу так во флеши, это будет работать ? что вернёт такая функция ? всё что написано в params.php в виде string, или определённые переменные, которые в нём както указаны ?

Добавлено через 1 минуту
mooncar
Спасибо, это именно то что нужно, дальше сам разберусь :)

mooncar
01.06.2010, 14:00
Пожалуйста.
что вернёт такая функция ? всё что написано в params.php в виде string

А вот для того, чтобы LoadVars испльзовать для получения в чистом виде всей строки, без разбора переменных и значений, используется обработчик onData.

Tails
01.06.2010, 14:03
ещё раз спасибо :)
Вот ещё маленький вопросик, со стороный пхп небудет каких нибудь ограничений ? он будет автоматом предостовлять данные при каждом таком запроск из флеши ? можно ли сделать чтоб он не раздавал всем подряд данные, что-то типо пароля ?

mooncar
01.06.2010, 14:09
Можно сделать ограничение.
Используйте sendAndLoad и отправляйте скрипту какой-то пароль, который скритп должен будет проверить, прежде чем отдавать данные. Можно даже его попробовать зашифровать.

Tails
01.06.2010, 14:18
Хочу поставить вам ещё один плюс ;)

Добавлено через 22 минуты
ur='http://www.roll21.ru/assets/templates/sushi/pik.php';
bt.onPress = function(){
trace('Load '+ur);
trace('----------------------------');
a='load... '+ur;
my_lv.load(ur);
}
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
if (success) {
trace("load complete !");
a=this.Tex;
a+=' complete';
}
}

Всё почти отлично, сигнал до пхп доходит, но выводит undefinid, в чём может быть проблема ? в пхп переменную достаточно тупо обьявить, чтоб флеш её считал ?

Добавлено через 46 минут
заменил строку:
a=this.toString(Tex);
уже стало что-то выводиться, но в непонятной форме:
7=&onLoad=%5Btype%20Function%5D
п пхп Tex=7;

in4core
01.06.2010, 15:21
вам же сказли использовать не онлоад а onData