2011-08-01 44 views
0

我有一個表單發送一個簡單的http post到一個PHP頁面。 PHP代碼處理這個帖子,這個帖子會從一個url中提取一個JSON字符串,解析它,然後發送一堆電子郵件。所有的代碼都在一個頁面上,並按預期工作。HTTP POST到PHP:尋找一些基本的幫助

錯誤的是等待所有的電子郵件發送,最後收到HTTP POST迴應。我想要做的是將最初的帖子與JSON字符串處理分開。換句話說,立即關閉後臺會話,獲得一個簡單的「完成」並讓PHP JSON處理代碼完成它的工作。

我是PHP新手,所以任何建議都會有幫助。

+0

現在你已經說明了你想要做什麼,你需要告訴我們你面臨的問題。究竟是什麼問題? – phant0m

+0

@ phant0m:如何從php腳本發送「ajax」請求(我的意思是異步運行php函數) – genesis

回答

0

我想補充一點必須發送到數據庫並設置一個cron作業定期發送尚未發出但所有郵件的郵件。

0

您正在尋找fsockopen()功能

+0

解釋? (不太清楚它是如何相關的) – Nightfirecat

+0

不,fsockopen似乎不是一個解決方案。如上所述,我的PHP代碼按原樣運行。我只需要將http post部分與JSON處理部分分開。我不想等待處理完成。這幾乎就像我需要兩個PHP頁面。一個是通過http post接收我的命令,另一個接收命令並在服務器端處理JSON數據 - 作爲後臺進程。 – johnwhitney

+0

我想我需要在接受我的http發佈的PHP頁面中的exec()。然後我需要使用exec()將發佈的字符串傳遞給另一個PHP頁面。任何想法如何做到這一點? – johnwhitney

0

最好的辦法是使用像Redis的消息隊列(具有blpop/brpop命令)。幸運的是redistogo提供免費的計劃。網上應該有足夠多的關於這個(Google)的信息。

次優選擇是使用asynchronous calls