我想做到以下幾點:PHP提交表單並獲取部分結果是進步
我有,你輸入一個IP地址,並以檢查幾件事情提交到PHP腳本的形式。
輸出是漸進的,需要一些時間直到完成。
我想逐漸輸出結果並將其發回表單。
你能請指教從哪裏開始?
我想做到以下幾點:PHP提交表單並獲取部分結果是進步
我有,你輸入一個IP地址,並以檢查幾件事情提交到PHP腳本的形式。
輸出是漸進的,需要一些時間直到完成。
我想逐漸輸出結果並將其發回表單。
你能請指教從哪裏開始?
您將需要將任務執行從HTTP請求中分離出來,因爲HTTP是無狀態的,除非您使用WebSockets或任何其他類流技術,否則將被迫返回即時結果。
因此,我基本上會發送第一個請求,開始在服務器上執行作業(可以使用現成的作業隊列),然後這個作業將輸出存儲在數據庫中。作業將獨立於HTTP工作流程執行。
然後,您可以使用AJAX輪詢服務器,詢問進度信息。當然,您可以通過在頁面加載時生成的唯一ID或使用cookie來唯一標識客戶端。
做這種事情的唯一方法就是通過套接字。你的選擇可能會像Web套接字(很新),一個Java插件或Flash(我敢肯定他們可以套接字)。否則,將HTTP請求發佈到服務器是一種全或無的請求。否則,你不得不把你的頁面檢查的任何「東西」分成多個步驟,你可以使用AJAX來調用它們,並讓腳本顯示返回的內容。當然,如果每個請求都很長且密集,請關注服務器上的工作負載。 – jmbertucci 2013-04-20 13:15:58