PDA

Просмотр полной версии : Проблема с получением переменной из PHP


MXPain
12.10.2011, 20:07
вроде все делаю правильно, ну вот на простом примере
<?php
$myVar = "some text";
echo "myVar=$myVar";
?>

private function getFromPHP():void
{
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest("myfile.php");
request.method = URLRequestMethod.POST;
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, completeHandler);
loader.load(request);
}
function completeHandler(event:Event) {
var s = event.target.data.myVar;
trace(s);
}

В результате получаю undefined, подскажите плиз что я делаю не так? Вроде все правильно же?

Vishapakahr
12.10.2011, 20:30
Должен быть так в пхп

<?php
$myVar = "some text";
echo "myVar=".$myVar;
?>

MXPain
12.10.2011, 20:39
Vishapakahr я так тоже пробовал, не работает(((

trng
12.10.2011, 20:44
Vishapakahr, вы неправы. Так тоже можно:
echo "myVar=$myVar";

Vishapakahr
12.10.2011, 20:46
ааа ладно понял , new URLRequest("myfile.php"); , тут он загружает как файл а не как хттп запрос .. в броузере все будет ок ! попробуй так.

new URLRequest(Capabilities.playerType=="External"?"http://doman.com/..../myfile.php":"myfile.php");

trng
12.10.2011, 20:46
MXPain,
- сделайте trace(event.target.data) и многое прояснится.

Добавлено через 4 минуты
MXPain, а где
var urlVariables:URLVariables = new URLVariables();
urlVariables.decode(event.target.data);
?

MXPain
12.10.2011, 20:56
Vishapakahr все равно не пашет(((

Добавлено через 1 минуту
вот трэйс event.target.data
%3C%3Fphp%0D%0A%24myVar%20=%20%22text%22%3B%0D%0Aecho%20%22myVar%3D%22%2E%24myVar%3B%0D%0A%3F%3E

Vishapakahr
12.10.2011, 20:59
хмм.. странно ! сейчас попробую.

Добавлено через 1 минуту
а у тебя локалхост включен ? где находится пхп файл ? вроде в ас ошибок нет ..

MXPain
12.10.2011, 21:05
function completeHandler(event:Event) {
var urlVariables:URLVariables = new URLVariables();
urlVariables.decode(event.target.data);
var s=urlVariables.myVar;
trace(s);
}
результат трэйса undifined

Добавлено через 2 минуты
локалхост включен находится, все в соответствующей папке денвера

GBee
12.10.2011, 21:16
%3C%3Fphp%0D%0A%24myVar%20=%20%22text%22%3B%0D%0Aecho%20%22myVar%3D%22%2E%24myVar%3B%0D%0A%3F%3E
локалхост включен находится, все в соответствующей папке денвера

в браузере скрипт что показывает? Или тоже пытается открыть "файл с неизвестным расширением".

Vishapakahr
12.10.2011, 21:17
Судя по этому %3C%3Fphp%0D%0A%24myVar%20=%20%22text%22%3B%0D%0Aecho%20%22myVar%3D%22%2E%24myVar%3B%0D%0A%3F%3E у тебя однозначно не загружается как хттп запрос ..

MXPain
12.10.2011, 21:23
в браузере показывает myVar=text

GBee
12.10.2011, 21:29
Ну пропишите абсолютный путь, а при выкладке относительный.

trng
12.10.2011, 21:30
Таки посмотрите в браузере. Ничего кроме "myVar=some text" браузер вывести не должен.
А вообще "проценты" говорят о том, что у вас на сервере срабатывает urlencode

Добавлено через 4 минуты
поставьте
loader.dataFormat = URLLoaderDataFormat.TEXT;

и сделайте trace(e.target.data)

-De-
12.10.2011, 21:44
Да пхп у него не работает, остальное - вторично.

crazyone
12.10.2011, 21:56
Очевидно же, что у тебя не выполняется код пхп, потому что лоадер загрузил полный текст скрипта вместо результата его выполнения.
Либо ты пытаешься напрямую грузить файл из файловой системы, а не с локалхоста, либо твой апач не умеет обрабатывать пхп.

MXPain
12.10.2011, 22:03
<?php

$myVar = "text";

echo "myVar=".$myVar;

?> вот результат трэйса

Добавлено через 10 минут
Таки посмотрите в браузере. Ничего кроме "myVar=some text" браузер вывести не должен.
так он ничего кроме этого и не показывает

Добавлено через 28 минут
пхп работает, блин ничего не могу понять....

Добавлено через 44 минуты
вот тут (http://mxpain.ru/1.rar) исходники

Добавлено через 1 час 28 минут
все заработало, всем спасибо)

Добавлено через 1 час 35 минут
хотя в дебаге трэйс выводит null