Alexcr17
4.07.2013 - 11:16
Не работает функция is_integer. Вытаскиваю данные с массива. Ввожу через форму ввода. Все проверил данные передаются, но функция почему то не работает, именно с переменной из массива. когда проверяю простое число - все работает нормально. Не пойму в чем проблема. Помогите, кто знает? Вот код:
<?php
if (isset($_POST["sub"])){
print_r($_POST);
$n1=$_POST["n1"];
$n2=$_POST["n2"];
}
echo " является числом" .is_integer($n1)
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"/>
<title>Пример</title>
</head>
<body>
<form name="myform" action="index.php" method="post">
<table>
<tr>
<td>Число 1</td>
<td><input type="text" name="n1" /></td>
<tr>
<td>Число 2</td>
<td><input type="text" name="n2" /></td>
</tr>
<tr>
<td>
<input type="submit" name="sub" value="Отправить" />
</td>
</tr>
</body>
</html>
exotica
4.07.2013 - 11:22
Цитата |
Чтобы проверить, что переменная является числом или строкой, содержащей число (как поле ввода в форме, которое всегда является строкой), используйте is_numeric() |
<?php
if (isset($_POST["sub"])){
print_r($_POST);
$n1=$_POST["n1"];
$n2=$_POST["n2"];
}
if(is_numeric($n1))
{
echo " является числом" .$n1;
}
?>
как я понял возвращет либо true (1) либо false(0) по этому целесообразно использовать с if else
PHP.NET >>>
http://www.php.net/manual/ru/function.is-int.php
_____________
[FAQ]Регистрации пользователей, сохранение в БД---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
exotica
4.07.2013 - 14:35
Цитата (HErATuB @ 4.07.2013 - 14:02) |
Так то is_int |
ну так то оно так, только ТС не объяснил что он хочет от этой функции. Посматрев его код, я предложил альтернативу
_____________
[FAQ]Регистрации пользователей, сохранение в БД---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Invis1ble
4.07.2013 - 20:10
Данные из формы в $_POST не будут типа int никогда. В твоем случае проверять нужно с помощью is_numeric().
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
exotica
4.07.2013 - 20:15
Урааа спасибо Invis1ble хоть ты об этом вспомнил ))
Цитата |
как поле ввода в форме, которое всегда является строкой |
_____________
[FAQ]Регистрации пользователей, сохранение в БД---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза