[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как разрешить ввод в поле input только цифр?
Страницы: 1, 2
Kuzma92
Цитата (FatCat @ 4.04.2024 - 20:20)
Если ввести «1бублик», твоя проверка признает ввод правильным.

Нет, потому что у меня <input type=number>. Один только нехороший момент, который пропускает запятые и точки, и если пользователь вводит, например, 100,000 или 100.000, то записывается в файл - 100, а все что после точки или запятой вырезается. Вот я и подумал в эту сторону
Цитата (Kuzma92 @ 4.04.2024 - 19:43)
как правильно добавить сюда же (не создавая новую) дополнительную проверку на заполнение только цифр

FatCat
Цитата (Kuzma92 @ 4.04.2024 - 20:57)
и если пользователь вводит, например, 100,000 или 100.000, то записывается в файл - 100

Тогда зачем сравнивать с нулем?

_____________
Бесплатному сыру в дырки не заглядывают...
Kuzma92
Цитата (FatCat @ 5.04.2024 - 00:50)
Тогда зачем сравнивать с нулем?

чтобы значение было 0 или более, но не было пустым
Valick

<?php
declare(strict_types=1);

$min = 0;
$max = 1000;
$error = 'Число должно быть в диапазоне от ' . $min . ' до ' . $max;
$args = [
'number' => [
'filter' => FILTER_VALIDATE_INT,
'flags' => FILTER_REQUIRE_SCALAR,
'options' => [
'min_range' => $min,
'max_range' => $max,
],
],

'action' => [],
];


$post = filter_input_array(INPUT_POST, $args);
?>
<form method="post">
<
label>
<
input type="text" name="number" value="<?= $post['number'] ?? '' ?>">
</
label>
<
input type="submit" name="action" value="Отправить">
</
form>
<?php
if (isset($post['action']) && $post['number'] === false) {
?><p><?= $error ?></p><?php
}



_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.