Простая проверка данных

Печать RSS
177

Автор
Пишу, строю и воображаю
0
в переменной $promo должно быть число от 1 до 10.

делаю проверку...

$promo=intval($_POST['promo']);
if($promo==""){...error...

Получается если системе подсунут не число, то система выдаст ошибку. НО, а если подсунут 11 или другое число, не от 1 до 10...

Как сделать проверку?

Обычно я делал if($promo==1 and $promo==2... но это костыль...

Поделитесь как избежать этого костыля?)))))

СПАСИБО

Землянин
0
if($promo < 1 or $promo > 10) { error... }
Изменил: TRAIL (26.01.2014 / 10:13)

Землянин
0
если я правельно понял, то нужна проверка переменной на число?
<?php
$promo = '123';
if(preg_match('|^[\d]*$|', $promo)){
echo 'good';
}
else{
echo 'error';
}
?>

Добавлено через 03:54 сек.
или я не проснулся и нужно сделать проверку на диапазон чисел от 1 до 10?nozh
Автор
Пишу, строю и воображаю
0
2, как легко)) не додумался. Спасибо большое!

3, ничего бывает :-) кстати зачем использовать регулярку, когда всё решает intval() ?))))

Оранжевые штаны
0
1. Moto-Moto, is_integer () проверка для числовых значений, а дальше проверяешь диапазон.

2000 лет д.н.э.
0
5. WmLiM, проверяя интервал ты автоматом зарежешь строку, так что проверять тип переменной необязательно.
разве что для чистоты кода
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск