Последовательность выполнения программы в Flex с PHP

#php #actionscript-3 #apache-flex #asynchronous #flex4.5

#php #actionscript-3 #apache-гибкий #асинхронный #flex4.5

Вопрос:

Я создаю приложение Flex и PHP, в котором я предоставляю пользователям опцию сохранения результатов, которая будет вызывать службу php, которая генерирует файл результатов. Затем у меня есть ссылка на файл.функция загрузки (url) с URL сгенерированного файла. Проблема здесь в том, что всплывающее окно для сохранения появляется еще до того, как файл будет сгенерирован на сервере. Таким образом, пользователь получит неполный файл, так как генерация файла займет не менее 10-15 секунд.

 printToFile.token = customerTyped.printToFile(customerArray,displayno);
var filepath:String= "http://localhost/" displayno ".txt";
var request:URLRequest = new URLRequest(filepath); 
var fileRef:FileReference = new FileReference(); 
fileRef.download(request);**
 

Я думаю, что функция (сервис) вызывает PHP-функцию customerTyped.printToFile(customerArray,displayno);
не ждет его возврата и продолжает выполнять следующие инструкции асинхронно.

Как мне сделать так, чтобы диалоговое окно загрузки не появлялось до тех пор, пока функция php printToFile не будет завершена.?

Ответ №1:

Вам нужна вторая функция PHP, чтобы сообщить вам, готов файл или нет.

Другое решение — использовать обычный URLRequest , вызвать вашу printToFile PHP-функцию, затем прослушать COMPLETE событие, которое должно сообщить вам, когда файл был сгенерирован.