Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 11.11.2009, 12:19
UginL7 вне форума Посмотреть профиль Отправить личное сообщение для UginL7 Найти все сообщения от UginL7
  № 1  
Ответить с цитированием
UginL7

Регистрация: Oct 2009
Сообщений: 13
Question Ожидание ответа от PHP

Тема может и избита, но ответа я так и не нашёл....
Вообщем суть вопроса:
Есть вот такой код из Файл1.as
Код AS3:
var chSendData:connectToDB = new connectToDB(mcErr);
this.chLineAll = chSendData.chData(this.chLine.text+"\n");
Это отрабатывает при нажатии на кнопку и передаётся в РНР, тут проблем нет (и забегая на перёд - есть одновременно, в this.chLineAll ничего не приходит )
вот реализация connectToDB из Файл2.as
Код AS3:
public function chData(chString:String):String
{
           this.strChatLine = "";
           this.urlRequestScript = new URLRequest("http://10.8.98.11/magic.ua/php/chat.php")
           this.urlRequestScript.method = URLRequestMethod.POST;    
           this.urlLoaderData.addEventListener(Event.COMPLETE, sendChatString);
           this.urlVarible.strChat = chString;
           this.urlRequestScript.data = this.urlVarible;
           this.urlLoaderData.dataFormat = URLLoaderDataFormat.TEXT;
           try
           { 
                      this.urlLoaderData.load(this.urlRequestScript);
           } 
           catch (err:Error) 
           { 
                     var mcURLErr:errWindow = new errWindow("Ошибки при передаче данных в БД", this.mcErr);
           }
           return this.strChatLine; //Отрабатывает раньше, чем this.strChatLine принимает значение от РНР
}
 
internal function sendChatString(e:Event):void
{
           this.strChatLine = e.target.data;
           var mcURLErr:errWindow = new errWindow(this.strChatLine, this.mcErr);
           this.urlLoaderData.removeEventListener(Event.COMPLETE, sendChatString);
}
Как я понимаю, что просто задача по получению данных уходит в другой поток и отрабатывает уже потом, после того как был отработан return.
Так вот сам вопрос как сделать задержку, что б this.strChatLine принимал значение и только потом отрабатывал return!?

пробовал сделать вот так
Код AS3:
{
....
while(this.strChatLine == "")
{
}
return this.strChatLine;
}
но тогда флешка вылетает по таймауту, и к тому же это не есть хорошо.

Создать новую тему   Часовой пояс GMT +4, время: 07:04.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
php , return , задержка ответа

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:04.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.