Forum Webscript.Ru
Программирование => PHP => Тема начата: Unbreakable от 25 Марта 2004, 02:58:54
-
Как сдулать так чтобы при получении переменной из формы проверять ее на значение. Если пришло цифровое значение (только символы 0-9), то выполняется одно, если букво-цифровое значение, то выполняется другое.
Как я понимаю, надо сначала эту переменную инициализировать
$aaa=$_POST["aaa"];
дальше надо ее проверить, а вот тут у меня и проблема, я знаю, что надо c регулярными выражениями работать, но не знаю как. :-((
По идее, мне должно вернуться FALSE или TRUE и в зависимости от этого и продолжать свою работу.
if (цифра):
делать это;
elseif (не цифра):
делать то;
endif;
посоветуйте как и что делать...
-
читать preg_match (http://www.php.net/preg_match) там все написано.
-
во-первых, $_POST["aaa"] - это тоже переменная.
с $aaa работать удобнее, но "инициализировать", ее не так уж и "надо".
Во-вторых, ты путаешь цифру и число.
Не забыл еще из школьной программы?
В-третьих, elseif у тебя лишний. Надо просто else
Ну, а проверка у тебя очень простая.
Надо просто ман читать почаще.
во-первых, есть функция is_numeric
но она пропускает числа с точкой.
Во-вторых, есть функция intval()
такую проверку, как у тебя, можно сделать так:
if(strval(intval($aaa))===$aaa)
-
Unbreakable
http://detail.phpclub.net/article/regexp_1
http://detail.phpclub.net/article/regexp_2
-
не нужны здесь регулярки
-
RomikChef,
не додумывая, во фразу
>> букво-цифровое значение
я включил и строки \'q2w3\'
-
верно.
но из контекста вопроса видно, что для него буквенно-цифровые - это все, которые не цифровые.
-
if(ereg("^([0-9]+)$",$неяснокакаяпеременная))
{
blabla1;
}else{
blabla2;
}
по идее так :)
-
Спасибо всем.
Будем изучать пхп дальше...