PHP/HTML-使用PHP中的变量设置输入的上限


PHP/HTML - Setting a cap on a input using a variable in php?

我正在寻找一种限制输入量的方法,如下所示:

<?php
$Maximum = 10;
?>
<form action="" method="post">
     Quantity: <input type="number" value="0" min="0" max=$Maximum step="0" data-number-to fixed="2" data-number-stepfactor="100"  name="Quantity" />
    <input type="submit">
</form>

但最大值会根据数据库的不同而变化,因此它可能在1到1000+之间。有没有任何可能的方法可以做到这一点,只是在HTML中进行限制,或者在提交数字后我必须只使用PHP if语句?

假设您正在从DB中获取$maximum值。您可以尝试使用maxlength属性。无需使用JS。如果你想在安全方面,你必须在服务器端用上面提到的If语句进行另一次检查。

试试这个:

<?php $Maximum = 10; ?>
<form action="" method="post">
Quantity: <input type="number" value="0" min="0" maxlength="<?php echo $Maximum; ?>" step="0" data-number-to fixed="2" data-number-stepfactor="100"  name="Quantity" />
<input type="submit">
</form>

参考:http://www.w3schools.com/tags/att_input_maxlength.asp

我建议使用jQuery Parsley插件,该插件具有您需要的此功能以及许多其他对表单验证有用的功能。

http://parsleyjs.org/

这里有你需要的例子http://parsleyjs.org/doc/examples/simple.html

此外,您应该使用php进行验证,因为这种方式是在客户端进行的,不安全。

您可以使用JavaScript代码来限制值。在当前代码中,没有限制,不使用$Maximum变量。

您将如何从数据库中接收$Maximum?

根据这些样式类的实现方式,您可以在html代码中打印PHP值,如下所示: <html> [...] the max value is <?php echo $Maximum; ?> from now on [...] <html>