Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: как сделать проверку на то, что бы в поле были только числа
Форумы портала PHP.SU » » Вопросы новичков » как сделать проверку на то, что бы в поле были только числа

Страниц (2): [1] 2 »
 

1. livote - 28 Сентября, 2012 - 19:55:14 - перейти к сообщению
мне нужно проверить icq.код есть(взял от проверки мыла), но вот нужно что бы проверялось на то, что бы в значениях были только числа
2. re_nat - 28 Сентября, 2012 - 20:11:06 - перейти к сообщению
is_numeric()
3. livote - 28 Сентября, 2012 - 20:21:28 - перейти к сообщению
re_nat
Цитата:
is_numeric()


немного не понял.вот у меня было:

if (!ereg(".+@.+\..+", $em))
{ну и тут сообщение ошибки и выход...не важно}

как применить сюда is_numeric().что бы для определённой переменной
4. KingStar - 28 Сентября, 2012 - 21:01:11 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $value = 12345;
  2.  
  3. if(!preg_match("/^[0-9]+$/", $value))
  4. {
  5.    echo "Переменная содержит не только числа";
  6. }
  7. else
  8. {
  9.   echo "Все гуд, переменная только из чисел";
  10. }
5. livote - 28 Сентября, 2012 - 21:06:24 - перейти к сообщению
KingStar, огромное спасибо!
6. armancho7777777 - 28 Сентября, 2012 - 21:39:46 - перейти к сообщению
livote пишет:
if (!ereg(".+@.+\..+", $em))
{ну и тут сообщение ошибки и выход...не важно}

Чем Вам не угодил
re_nat пишет:
is_numeric()
?)
7. KingStar - 28 Сентября, 2012 - 22:16:38 - перейти к сообщению
armancho7777777 видимо тем, что is_numeric(4.2) = true Подмигивание
8. armancho7777777 - 29 Сентября, 2012 - 10:08:53 - перейти к сообщению
KingStar пишет:
видимо тем, что is_numeric(4.2) = true

Ну так есть
Подмигивание
9. KingStar - 29 Сентября, 2012 - 10:11:58 - перейти к сообщению
armancho7777777 Радость Радость Радость

is_int(23) - true
is_int("23") - false

Язычок
10. armancho7777777 - 29 Сентября, 2012 - 10:17:11 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. $n = '23';
  3.  
  4. if(is_int($n * 1))
  5. {
  6.     echo 'true';
  7. }
  8.  
11. KingStar - 29 Сентября, 2012 - 10:18:42 - перейти к сообщению
armancho7777777, ты как ребенок, пока не скажешь "На конфетку" - не успокоишься Радость Радость Радость
12. armancho7777777 - 29 Сентября, 2012 - 10:20:06 - перейти к сообщению
Для особо одарённых:
в PHP достаточно встроенных функции, что бы не придумывать для этого свои.
13. KingStar - 29 Сентября, 2012 - 10:29:59 - перейти к сообщению

armancho7777777 пишет:
Для особо одарённых


а вот это уже полетел камень Нахмурился

если ты думаешь, что лучше делать две операции вместо одной, то делай, особо одаренные перебрали все варианты, которые только можно (видимо по незнанию того, что они возвращают в том или ином случае)

Ну что же, "На конфетку", а теперь аргументируй, почему мой ответ является ошибочным??? он не вернет желаемый результат???

(Добавление)
armancho7777777 пишет:
в PHP достаточно встроенных функции, что бы не придумывать для этого свои.


is_int($n * 1) - ну да, это сработала встроенная функция, никак не твой велосипед Хм
14. Мелкий - 29 Сентября, 2012 - 10:34:44 - перейти к сообщению
armancho7777777 пишет:
if(is_int($n * 1))

А теперь проверь на других данных.
Null, строка, даже объект даст true (последний хоть и с notice в комплекте).
Разве только массив не пропустит, с фаталом грохнется.
15. armancho7777777 - 29 Сентября, 2012 - 10:44:03 - перейти к сообщению
KingStar пишет:
а теперь аргументируй, почему мой ответ является ошибочным??? он не вернет желаемый результат???

Да оказывается это ты так конфетки любишь ))
Успокойся, всё нормально ))
Я был не прав ))
(Добавление)
Мелкий пишет:
Null, строка, даже объект даст true (последний хоть и с notice в комплекте).

Да, точно Мелкий.
Ну, я в общем-то, если жду целое число, то и проверяю просто через is_int();
И чёрт с тем, что число будет представлена в виде строки: значит не пропущу.
Я то точно знаю, что число, если пришло коректно, то оно может быть только целым, а если нет, значит и пришло оно не коректно.
(Добавление)

KingStar пишет:
а вот это уже полетел камень Нахмурился

Ух ты))
Будь проще, и люди потянутся))
Знакомые слова ?))

 

Powered by ExBB FM 1.0 RC1