Я не уверен, как справиться с этим, и я попробовал, какие для меня самые очевидные решения, но до сих пор ни один не оказался полностью удовлетворительным.Я должен пропустить что-то очень простое.
У меня есть форма с вводом типа текста:
<input type="text" name="album_id">
Я хочу проверить ввод, чтобы пользователи вводили только целое число без знака ...
$required = array(); // required or invalid input
$tmp = trim($_POST['album_id']);
if (!is_int((int)$tmp)) {
$required['album'] = 'The album id must contain a positive numeric value only.';
}
Пока что я использую !is_numeric($tmp)
, но пользователь может ввести 9.2 или '1e4', и он подтвердит ..., чтобы он не работал.
IЯ также пытался !is_int((int)$tmp)
, но по какой-то причине он не работает (возможно, так и должно быть, но я делаю это неправильно ...).Я пытался ctype_digit
безуспешно.Я, вероятно, что-то пропускаю, но не уверен, что.
Как я могу проверить число без знака в php?Нет чисел с плавающей запятой, отрицательных чисел и т. Д. ... только простое число без знака (от 1 до n).