首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >if语句的帮助-最少3个字符

问if语句的帮助-最少3个字符
EN

Stack Overflow用户
提问于 2011-01-22 14:26:38
回答 2查看 835关注 0票数 1

由于输入没有minlength="“,我如何创建执行以下操作的if语句:

如果用户未输入超过3个字符,则不会将其保存在数据库中。

以下是输入:

代码语言:javascript
复制
 QTY<input title="QUANTITY PER ITEM" size="1"  name="inputQTY" value="**(minimun of 3 characters)**"/>

有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2011-01-22 16:48:08

注意:输入字段上是否有最小值限制并不重要;用户仍然可以伪造表单以包含他或她想要的任何值。因此,您需要在服务器端进行验证。

假设您使用PHP作为服务器端语言。

代码语言:javascript
复制
$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?

票数 2
EN

Stack Overflow用户

发布于 2011-01-22 14:53:09

表单验证是检查表单字段的填写格式是否正确的过程。在你的问题中,正确的格式是“超过3个字符”。当然,如果在表单验证过程中涉及语句。在客户端,您可以使用JavaScript代码来验证表单字段。

它的工作原理如下:表单有一个onsubmit事件处理程序,当用户单击Submit或按Enter时,将触发onsubmit。onsubmit是您放置表单验证代码的位置。

代码语言:javascript
复制
<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处理程序的方法

代码语言:javascript
复制
 ...  

onsubmit函数可以返回值: true表示允许提交表单,false表示停止提交。

什么是document.forms.mainForm.inputQTY.value.length?document.forms.mainForm引用表单named mainForm,而.inputQTY查找inputQTY字段。您可以使用document.getElementsByTagName手动查找这些元素,但是编写这种类型的代码非常耗时和耗费空间。

因为有些用户禁用了JavaScript,或者黑客故意禁用JS以绕过验证,所以您必须验证服务器端。

服务器端代码将如下所示:

代码语言:javascript
复制
if (strlen($_GET['inputQTY']) < 3) {
  echo "ERROR: Must be more than 3 characters";
} else {
  // submit data
}

注意:代码是从head编写的,未经过测试

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4766485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档