#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
событие, которое должно сообщить вам, когда файл был сгенерирован.