2017-07-30 157 views
0

我從某處獲得以下代碼,但我不知道輸入標籤中需要具有「值」屬性的原因。我刪除了它,代碼完美運行。是出於安全原因嗎?或者我錯過了什麼?爲什麼輸入標籤在「值」屬性中輸入用戶輸入

<input type="text" name="username" placeholder="Enter Username" maxlength = "30" value= "<?php if (isset($_POST['username'])) echo $_POST['username']; ?>" required> 

感謝您的時間

+0

與你使用什麼現在的價值屬性,從而需要能夠在通過它沒有價值到另一個方法的地方,並可能回聲在那裏 –

+0

*「是出於安全原因?」 - - 不是真的,如果你想保護它,查找XSS漏洞/注入 –

+1

這通常用於當你報告輸入中的錯誤,用戶不必重新輸入所有沒有錯誤的輸入。基本上它是將該字段中顯示的值設置爲在提交表單之前由用戶輸入的值 – RiggsFolly

回答

-4

是的,你說得對,它不要求是有,但它是輸入的一部分,沒有它,你的HTML將不被考慮完善。請通過HTML驗證enter link description here嘗試下面的代碼,看看它是如何運行時,有對input標籤

<!DOCTYPE html> 
<html> 
<head> 
    <title>Bad Code</title> 
</head> 
<body> 
    <input type="" name=""> 
</body> 
</html>