PHP输入表单,具有精确的数字位数

时间:2014-02-06 19:28:36

标签: php mysql

我正在制作一个数据库,其中包含有关我所有书籍的名称和信息。

我想在输入字段中包含ISBN编号,我想知道如何只接受13位数字。

现在我正在使用它:

<form action="insert.php" method="post">
<li>ISBN:* <input type="number" name="isbn">

2 个答案:

答案 0 :(得分:1)

// Check the form was submitted
if(!empty($_POST))
{
  // Simple validation check that the length is 13 and that there are only numbers
  if(strlen($_POST['isbn']) != 13 || !preg_match("/^[0-9]*$/", $_POST['isbn']))
    echo "ISBN needs to be 13 digits in length";
  else
    echo "ISBN is valid";
}

答案 1 :(得分:0)

您可以在客户端和服务器端执行此操作。客户端是可选的,服务器端是必需的。

客户端

<input name="isbn" type="number" minlength="13" maxlength="13">

服务器端

if (strlen($_POST['isbn']) == 13 && preg_match('/^\d+$/',$_POST['isbn'])){
    // isbn is valid
}