2013-11-22 36 views
-2

我已經結束了我以前從未遇到的情況。一個客戶有一個第三方公司提供的表格,他們在提交表格時負責處理各種通訊和其他管理任務,但令人驚訝的是他們沒有驗證。表單操作直接到另一臺服務器,而不是我正在處理的服務器。因此,我不明白我如何自己添加驗證。發送到「動作」之前PHP驗證表格

理想情況下,我需要審覈表單以驗證垃圾郵件並驗證驗證碼,然後發送到原始表單操作。我已經使用jS添加了一些前端驗證,但這當然僅用於增強UI而不用於嚴格驗證。

有誰知道我是否可以用PHP做任何事情..?非常感謝。

+0

在前端,你不能做任何事情與php.u無法運行PHP,直到它到達server.in前端提交前檢查formsubmit提交。 – Bhadra

+0

最終驗證必須在表單鏈接的「操作」腳本中完成。想一想:如果可能的話,中間人攻擊是非常普遍的。 –

+0

當然你可以用PHP做很多事情。您可以驗證服務器上的輸入,然後使用'curl'將其發送到其他服務器。 –

回答

1

您可以基本上將表單提交給您的PHP頁面,在那裏驗證,如果正確,則將請求服務器端發送回原始目標(第三方站點)。奇怪的是,雖然一個提供商不提供任何形式的驗證...

+0

缺乏驗證是令人難以置信的。我發現表單數據也被直接插入到他們的數據庫中! 我不知道我是如何通過PHP將數據發送給第三方的。如果我已經驗證了我的$ _POST變量內容,那麼當我完成數據時,如何發送此內容? – Dan

+0

查看註釋,當條目有效時,可以使用curl從服務器端代碼生成HTTP請求。基本上,除了驗證外,你必須做的事情是將所有發佈的值添加到新的請求中,發送它並測試結果。雖然Tis非常「老派」,但第三方通常會提供某種API來與其後端進行通信。我還發現[this](http://php.net/manual/en/httprequest.send.php),如果不使用curl可能會有所幫助,但我不是自己進入PHP,所以我不知道如果這是很好的使用這個或不... –

+0

鑑於他們沒有提供驗證的事實,我不會希望爲API。我會研究cURL和你的鏈接,看看我能否找到一個可行的解決方案。感謝您的意見。 – Dan