PDA

Просмотр полной версии : Загрузка переменной с php в flash


CyberWolf15
20.07.2010, 15:29
Здравствуйте, мне нужно загрузить значение переменной ($listeners12839) с php скрипта в флеш,
как это сделать пожалуйста объясните на моем примере.
Вот php скрипт:

<?php
header("Content-Type: text/html; charset=windows-1251");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
$listeners12839="";
$listeners12839=file_get_contents('http://info.radioserver.ru/inc/getinfo.php?getlisteners=12839&mount=jur');
if ($listeners12839)
{
echo $listeners12839;
}
else
{
$curl_listeners12839 = curl_init();
curl_setopt($curl_listeners12839, CURLOPT_RETURNTRANSFER, 1);
$url_listeners12839 = 'http://info.radioserver.ru/inc/getinfo.php?getlisteners=12839&mount=jur';
curl_setopt($curl_listeners12839, CURLOPT_URL, $url_listeners12839);
//curl_setopt($curl_listeners12839, CURLOPT_HEADER,1);
$listeners12839 = curl_exec($curl_listeners12839);
echo $listeners12839;
}
?>

объясните пожалуйста как использовать в флеше функцию loadvariables.

Хемуль
20.07.2010, 15:32
2 CyberWolf15:
Переменные нужно отдавать в виде строки:
var1=value1&var2=value2&var3=value3
У вас сейчас что-то вроде:
value1
Видите разницу?
Механизм работы loadVariables расписан в документации.

CyberWolf15
20.07.2010, 15:35
значит нужно так?

echo "varlisteners="+$listeners12839;

Хемуль
20.07.2010, 20:30
2 CyberWolf15:
Ну, можно и так. Правда, помнится, конкатенация строк в РНР делается через точечку. Но не суть важно. Главное, что этим путём вы действительно вернёте строку, которую флешка может принять как переменную varlisteners и её значение.

var resultVars:LoadVars = new LoadVars();
resultVars.onLoad = function(success:Boolean) {
if (success) {
trace(resultVars.variable);
} else {
trace("Connection failed");
}
};
var sendVars:LoadVars = new LoadVars();
sendVars.action = "get_variable";
sendVars.sendAndLoad("http://mysite.com/script.php", resultVars, "POST");

Вот такой участок скрипта посылает серверному приложению по адресу http://mysite.com/script.php POST-запрос с переменной action, имеющей значение "get_variable". В ответ, от script.php, может прийти ответ с переменной variable, который мы можем обработать в resultVars.onLoad.

CyberWolf15
20.07.2010, 22:17
по твоему скрипту <Instance name> моего динамического текста, должен быть что?
И напиши еще пожалуйста что я должен добавить в конце php.

Хемуль
25.07.2010, 15:02
2 CyberWolf15:
У меня в коде выше нет текстовых полей.
В конце PHP-файла вы должны написать что-то типа:
echo "variable=".$php_variable
Где $php_variable - это ваша переменная в PHP. То есть, если значение этой переменной равно 1, то скрипт вернёт строку: "variable=1". Скрипт, который я написал выше, получит эту строку и в обьекте resultVars у вас появится свойство variable со значением "1":
trace(resultVars.variable); // напишет 1
Если же в скрипте напишите что-то типа:
echo "chunga_changa=".$php_variable
то в resultVars появится поле chunga_changa с соответствующим значением из $php_variable.

CyberWolf15
26.07.2010, 02:04
Большое спасибо за помощь