我有一個腳本,需要大約5分鐘才能執行並完成。一切都發生在一個PHP頁面(包括,但沒有AJAX或任何東西)。腳本完成後,您會通過電子郵件發送文件。輸出異步腳本的狀態
我希望前端只需接受表單提交併在幕後做這件事,同時通過推送信息,如果窗口保持打開狀態。
所以,舉例來說,這裏將是流量:
- 填寫表格並提交。
- 確認表單已提交 - 可自由關閉窗口。
- 如果窗口仍然開放,給「里程碑」更新
- 查詢完成
- 文件生成
- 電子郵件發送
我們的目標是提供在用戶等待信息爲它,但窗體提交後立即關閉窗口是完全可以接受的,並且電子郵件仍然會被接收。我知道我可以通過AJAX提交表單,但我怎樣才能回傳臨時流程完成,而不僅僅是成功回調?
我有一個類似的系統使用coldfusion和cfflush與iframe實現。當每個里程碑完成後,我會向iframe提供一個腳本標記,用於向父頁面發送一些內容以指示進度。 –