2011-05-07 49 views
1

我有以下功能來驗證用戶輸入。你能否建議是否可以?我只需要簡單的驗證用戶輸入的方式。不需要複雜的方式。如何以簡單的方式驗證用戶輸入?

function cleanData($data) { 
    $data = trim($data); 
    $data = htmlentities($data); 
    $data = mysql_real_escape_string($data); 
    return $data; 
} 
+0

我使用了一個php庫驗證類,你認爲這個過於複雜嗎?真的,你需要每次運行引導帶文件,但除此之外,使用驗證類,包括做自定義驗證,清理輸入等變得微不足道。 – Jason 2011-05-07 05:32:52

+0

你期望數據是什麼?即整數,浮點數等,只根據您的期望接受數據並拒絕其他數據。多數民衆贊成在簡單。 – 2011-05-07 05:32:53

+0

驗證意味着做某些檢查。例如,您可以看到$ data是否在特定的數字範圍或長度內。但是你在做什麼更像是「清理」變量。你想讓它更具體嗎? – itsols 2011-05-07 05:33:56

回答

1

這不是驗證功能。您的cleanData()函數只是轉義內容。它將HTML轉義與SQL轉義混合在一起,您應該在每個應用的基礎上單獨應用每個轉義。

該方法是不專業的,但實際上功能。 (我們在這裏看到的更糟糕)。您通過使用它來覆蓋常見問題。如果你確實將其應用到,則每傳入變量。

+0

是的,說得好。它實際上清理了數據,這在一定程度上有助於防止代碼/ SQL注入,具體取決於它將如何使用。 – itsols 2011-05-07 05:41:03