我的問題是關於被接收的形式HTML表單和是靜態的一個用戶輸入(通過「靜態」 - 我的意思是從喜歡的東西選擇選項,單選按鈕信息,複選框)。我應該做一個客戶端驗證,因爲我假設用戶可以用像螢火蟲這樣的工具來更改我的html代碼。有沒有從HTML表單的客戶端驗證靜態信息的一點?
例子:
我的代碼:
<select>
<option>public</option>
<option style="display:none">private</option>
</select>
用戶修改:
<select>
<option>public</option>
<option selected >private</option>
</select>
我應該驗證此輸入JS或離開它的服務器端驗證? 我知道用戶可以操縱JS,所以我看不出在JS中做這種驗證的意義。
我的邏輯:
由於這是一個靜態的信息一般(好人),用戶將不惹它,爲此沒有必要去檢查一下。
如果一個邪惡的用戶想要弄亂我的代碼,他可能會知道如何混合HTML代碼和JS代碼,所以再次 - 不需要對靜態輸入進行客戶端驗證。
所以,我是對的,或者應該始終在客戶端有全面的驗證幽靈。
PS:我只要求在客戶端,我常/以及所有的用戶輸入的服務器端驗證/
唐'worry.Even如果客戶端編輯的東西,它只會在他/她的本地計算機和簡單的重裝將再次帶回原來的HTML輸出改變。客戶端無法在服務器上進行更改(在上下文中您正在討論的內容)。 不要擔心。跟你一起開展Project.Fearlessly。 閱讀一些關於客戶端和服務器端編程語言的好書。 使用JavaScript和Ajax與一些PHP來驗證您的代碼! –
感謝@MESSIAH這是我需要的精神:) – Alordiel
像往常一樣,請記住客戶端驗證的「完整性檢查」 - 如果禁用JavaScript的用戶違反了您的安全模型,那麼您的安全模型將被破壞:) –