繁体   English   中英

验证PHP中的浮点数

[英]Validation for float number in php

如何验证仅输入1.0 -5.0浮点数? 我的系统现在可以接受:

  • 负浮点数
  • 负整数
  • +这样的符号,它不会显示在数据库中
  • 像这样a字母,它不会显示在数据库中。

下面有一些用于检查输入浮点数的代码。

savelibscores.php

if(isset($_POST['submit'])){

$value1=$_POST['s3'];
$value2=$_POST['s4'];
$value3=$_POST['year'];


if((filter_var($value1,FILTER_VALIDATE_FLOAT)&& $value1>0) && (filter_var($value2,FILTER_VALIDATE_FLOAT) && $value2>0)) {
echo 'TRUE.';

} else {
    echo 'FALSE.';
}

if(!empty($value1) && !empty($value2) && !empty($value3)){
    $sql=mysql_query("INSERT INTO `library`(s3,s4,year) VALUES ('".$value1."','".$value2."','".$value3."')")or die(mysql_error());
}
else{
    echo "Please fill all the fields. Please be sure to use float values also.";
}

}

我是从PHP网站http://php.net/manual/en/filter.examples.validation.phphttp://php.net/manual/en/filter.filters.validate.php提取的

if(isset($_POST['submit'])){

  $value1=$_POST['s3'];
  $value2=$_POST['s4'];
  $value3=$_POST['year'];
  $options = array(
    'options' => array(
                      'min_range' => -5,
                      'max_range' => 1,
                      )
   if(!empty($value1) && !empty($value2) && !empty($value3)){

    if((filter_var($value1,FILTER_VALIDATE_FLOAT,$options) && (filter_var($value2,FILTER_VALIDATE_FLOAT,$options))) 
      {
        echo 'TRUE.';
        $sql=mysql_query("INSERT INTO `library`(s3,s4,year) VALUES ('".$value1."','".$value2."','".$value3."')")or die(mysql_error());
      } else {
        echo 'Please be sure to use float values.';
      } 

} else {
    echo "Please fill all the fields. Please be sure to use float values also.";
}
}

暂无
暂无

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

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