2014-02-06 2 views
0

Я создаю базу данных, чтобы содержать имена и информацию обо всех моих книгах.Форма ввода PHP с точными цифрами

Я хочу включить номер ISBN в поле ввода, и мне интересно, как принимать только число с 13 цифрами.

прямо сейчас я использую это:

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

ответ

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"; 
} 
+0

Спасибо! :) Был именно то, что я искал –

0

вы можете сделать это и на стороне клиента и на стороне сервера. Сторона клиента необязательно, требуется серверная сторона.

стороне клиента

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

стороне сервера

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

'minlength =" 13 "minlength =" 13 "'? Должен ли быть «макс»? –

+1

Вы полностью правы - скопируйте & вставьте ошибку – Flixer

Смежные вопросы