简体   繁体   English

验证PHP中的浮点数

[英]Validation for float number in php

How can I validate to enter only float numbers from 1.0 -5.0 ? 如何验证仅输入1.0 -5.0浮点数? My system right now can accept: 我的系统现在可以接受:

  • negative float 负浮点数
  • negative integers 负整数
  • symbols like + , it is not displayed in the database +这样的符号,它不会显示在数据库中
  • letters like a , it is not displayed in the database. 像这样a字母,它不会显示在数据库中。

Below I have some code for checking to enter float number. 下面有一些用于检查输入浮点数的代码。

savelibscores.php 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.";
}

}

I pulled this from PHP's website http://php.net/manual/en/filter.examples.validation.php and http://php.net/manual/en/filter.filters.validate.php 我是从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