由於沒有使用MINLENGTH =「」用於輸入,分鐘我怎麼能做出的聲明,如果執行以下操作:幫助的if語句 - 3個字符
如果用戶沒有輸入超過3個字符之將不會保存在數據庫中。
這裏是輸入:
QTY<input title="QUANTITY PER ITEM" size="1" name="inputQTY" value="**(minimun of 3 characters)**"/>
任何想法?
由於沒有使用MINLENGTH =「」用於輸入,分鐘我怎麼能做出的聲明,如果執行以下操作:幫助的if語句 - 3個字符
如果用戶沒有輸入超過3個字符之將不會保存在數據庫中。
這裏是輸入:
QTY<input title="QUANTITY PER ITEM" size="1" name="inputQTY" value="**(minimun of 3 characters)**"/>
任何想法?
表單驗證是檢查表單字段是否填充正確格式(如果它們是進程)的過程。在你的問題中,正確的格式是「超過3個字符」。當然,如果在表單驗證過程中涉及到陳述。在客戶端,您使用JavaScript代碼來驗證表單域。
這是它是如何工作的:一個窗體有一個onsubmit
事件處理程序,當用戶單擊提交或按下回車鍵時,將會觸發onsubmit
。 onsubmit
是您放置表單驗證代碼的地方。
<script>
function onsubmit() {
if (document.forms.mainForm.inputQTY.value.length < 3) {
alert("ERROR: Must be more than 3 characters");
return false; // stops the form submission
}
return true;
}
</script>
這裏是你如何添加onsubmit處理程序
...的onsubmit
功能可以返回一個值:真讓要提交的表單,或假停提交。
什麼是document.forms.mainForm.inputQTY.value.length? document.forms.mainForm
引用的形式爲name
d mainForm
,而.inputQTY
找到inputQTY
字段。 您可以使用document.getElementsByTagName
手動查找這些元素,但它是[時間和空間] - 用於編寫該類型的代碼。
因爲有些用戶禁用了JavaScript,或者crackers故意禁用JS來繞過驗證,所以您必須驗證服務器端。
服務器端代碼會是這樣的:
if (strlen($_GET['inputQTY']) < 3) {
echo "ERROR: Must be more than 3 characters";
} else {
// submit data
}
注:代碼從頭寫的,沒有測試
注:如果有輸入上的最小值限制也沒關係領域與否;用戶仍然可以欺騙表單以包含他或她想要的任何價值。因此,您需要在服務器端進行驗證。
假設您使用PHP作爲服務器端語言。
$inputQTY = $_POST['inputQTY'];
if (strlen($inputQTY) < 3) {
// DO NOT INSERT INTO DB
}
else {
// insert after further scrubbing input
}
閱讀:What's the best method for sanitizing user input with PHP?
把javascriptand PHP驗證兩個 – 2011-01-22 06:30:05
回到谷歌和閱讀如何驗證數據的客戶端和服務器端都。在將數據保存到數據庫之前,即使您不知道驗證過程是什麼,也沒有任何具體問題。我的建議是閱讀驗證數據的一些教程 – 2011-01-22 06:31:34