2013-04-26 112 views
-1

那麼我會解釋我在做什麼。驗證網上大量上傳字段數據的最佳做法是什麼?

我需要驗證具有受限數據的文件,每個文件包含超過100k行,每行有120個字段,每個字段都根據定義的格式進行自己的驗證,例如「COD234-ES」等其他不同的格式,

我需要從SQL SERVER 2008中的數據庫中將這些數據插入表中,但在插入此數據之前必須對其進行驗證。

此文件必須從客戶端通過一個PHP框架方面取得的網絡接口上傳。

我在性能和效率方面的問題,是它做到這一點的最佳做法?

在客戶端首先驗證再上傳,第一上載到服務器然後用PHP驗證或上傳散裝插入到數據庫中,然後驗證使用Transact-SQL?

由於許多驗證我想使用正則表達式的表達式,但在SQL爲l

我感謝誰可以指導我認爲這種方式是最好的方式。非常感謝

回答

1

您想盡早驗證。

如果你可以在客戶端驗證,始終做到這一點,因爲這將節省客戶的網絡帶寬和服務器負載。您可能擁有比服務器更多的客戶端。

如果您可以在PHP中進行驗證,那比數據庫更好,因爲通常可以更輕鬆地將負載分散到多個Web服務器並保留單個數據庫,而不是在多個服務器上分割數據庫。

+1

但也驗證你的目的。永遠不要相信客戶送你什麼。 – 2013-04-26 22:10:18

1

簡單的答案是,你必須同時驗證在客戶端和服務器上。
在客戶端,由於上傳太多數據對用戶來說太不友好,因此會收到錯誤消息。

但是之後,您需要在服務器上重新驗證,因爲邪惡的人(或自動上傳界面)可以規避您的客戶端測試,並故意或愚蠢地引入垃圾或惡意數據。

0

同意rjmunro和困惑,驗證在客戶端和服務器端的數據。使用transact-sql重新驗證(或僅在測試階段)並不是非常有用,但在創建表時可以進行約束檢查。

相關問題