繁体   English   中英

使用php以HTML形式进行数字验证

[英]Number validation in html form using php

我创建了一个表格,其中提起的金额是

<label for="amt"<?php validateField( "amt", $Fieldsmissing ) ?>>Amt *</label> <input type="number" name="amt" id="amt" min="1" value="<?php setValue( "amt" ) ?>" />

在表格的顶部条件是

function setValue( $fieldName ) { if ( isset( $_POST[$fieldName] ) && $_POST[$fieldName] > 0 ) { echo $_POST[$fieldName]; } }

提交后,如果我输入了0,则会显示错误,但是如果我输入00或任何“-”符号或任何字母而不是0,它将无法验证。

据我所知,数字类型在IE的Mozila中存在错误,但在Chrome中可以正常运行,因为Chrome不接受低于1的任何输入。我要寻找的是,我想将输入值设置为0.1到最大正数(即99999)。 除此之外,如果输入其他任何内容,它将显示错误。 谁能告诉我什么条件最适合我的形式。 谢谢。

这里提供了完整的源代码供您理解,如果您在这里看看,将不胜感激

查看以下功能:

  • intval:使用指定的转换底数(默认值为10)返回var的整数值。 intval()不应在对象上使用,因为这样做会发出E_NOTICE级错误并返回1。
  • filter_var:使用指定的过滤器过滤变量。 FILTER_VALIDATE_INT您的情况,为FILTER_VALIDATE_INT
  • settype设置变量的类型。 (整数)

因此,请尝试以下操作:

function setValue($fieldName)
{
   if (isset($_POST[$fieldName]))
   {
      $field = intval($_POST[$fieldname]);
   }

   // other magic
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM