![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 93
|
Пытаюсь передать переменные в PHP, делаю пример по книге, но постоянно выскакивает ошибка
Цитата:
var serverFile:String = "http://localhost/web/test_flash.php";
var variables:URLVariables = new URLVariables();
variables.id = 1111;
variables.user = "nick";
var urlRequest:URLRequest = new URLRequest(serverFile);
urlRequest.data = variables;
urlRequest.method = URLRequestMethod.POST;
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
urlLoader.addEventListener(Event.COMPLETE, userResponseHandler);
try
{ urlLoader.load(urlRequest); }
catch (e:Error) { }
function userResponseHandler(e:Event):void
{
var urlLoader:URLLoader = URLLoader(e.target);
var args:URLVariables = new URLVariables(urlLoader.data);
trace("Data: " + args.response);
}
![]() У меня Flash CS4. Последний раз редактировалось wvxvw; 29.03.2010 в 18:33. |
|
|||||
|
.
|
Вот это уже было,
Зачем делать это? Вы и так дали понять. что data и есть URLVariables. |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 93
|
Даже если вообще эти строчки убрать, все равно та же ошибка выскакивает, там не в handler'е дело
![]() |
|
|||||
|
.
|
Что выводит trace?
|
|
|||||
|
Modus ponens
|
http://bugs.adobe.com/jira/browse/FP-1666
Поставьте тут крестик. И никогда на этом форуме не называйте темы так, как вы это сделали. Все шанcы за то, что ваша тема будет закрыта до того, как кто-либо вам ответит. Помогайте себе и другим понять о чем речь, и поверьте, никто наизусть ошибки по номерам не знает.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 93
|
Цитата:
Цитата:
Ну а как с этим багом бороться? Как в 10-м Flash Player переменные получить-то? |
|
|||||
|
.
|
Вольный перевод workaround
Не используйте URLLoaderDataFormat.VARIABLES. Установите формат в URLLoaderDataFormat.TEXT и распарсите самостоятельно, например: var re: RegExp = /(?P<prop>[^&=]+)=(?P<val>[^&]*)/g; var result: Object; var response: String = "foo=bar&bar=foo"; var resultOBJ: Object = {}; do { result = re.exec(response); if (!result) break; resultOBJ[result.prop] = result.val; } while (true); for (var p:String in resultOBJ) { trace(p, "=", resultOBJ[p]); } |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 93
|
Цитата:
|
|
|||||
|
.
|
function userResponseHandler(e:Event):void { var response:String = URLLoader(e.target).data; var re: RegExp = /(?P<prop>[^&=]+)=(?P<val>[^&]*)/g; var result: Object; var resultOBJ: Object = {}; do { result = re.exec(response); if (!result) break; resultOBJ[result.prop] = result.val; } while (true); response = ""; for (var p:String in resultOBJ) { response += p + "=" + resultOBJ[p] + "&"; } var args:URLVariables = new URLVariables(response); trace( "Data: " + args.toString() ); } |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:21. |
|
|
« Предыдущая тема | Следующая тема » |
|
|