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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: POST is_int -> string o_O

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
VestCoastman
Отправлено: 31 Мая, 2013 - 00:05:13
Post Id



Посетитель


Покинул форум
Сообщений всего: 374
Дата рег-ции: Дек. 2010  


Помог: 3 раз(а)




Что за магия такая?
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. if(isset($_POST['text']))
  4. {
  5.         var_dump($_POST['text']);
  6. }
  7. ?>
  8. <form method="post">
  9.         <input type="text" name="text" value="10">
  10.         <input type="submit">
  11. <form>
  12.  

Возвращает string(2) "10" Не понял
Объясните пожалуйста, почему не int?
 
 Top
Ezi
Отправлено: 31 Мая, 2013 - 00:09:15
Post Id



Частый гость


Покинул форум
Сообщений всего: 242
Дата рег-ции: Дек. 2010  


Помог: 2 раз(а)




Параметры в $_POST и $_GET всегда имеют строковый тип.

Используйте явное преобразование, для того, чтобы получить int.
Вот урок даже:
http://www.php.su/learnphp/datatypes/?mn

(Отредактировано автором: 31 Мая, 2013 - 00:10:48)



-----
Хочешь жить - умей вертеться
 
 Top
VestCoastman
Отправлено: 31 Мая, 2013 - 00:20:31
Post Id



Посетитель


Покинул форум
Сообщений всего: 374
Дата рег-ции: Дек. 2010  


Помог: 3 раз(а)




Ezi, спасибо, но как преобразовать строку в integer я знаю)
Вопрос заключался в этом - "Параметры в $_POST и $_GET всегда имеют строковый тип.", почему?
Возможно я не правильно запросы в гугл делал и ничего не нашел, но хочется почитать историю, почему все таки string?

(Отредактировано автором: 31 Мая, 2013 - 00:20:51)

 
 Top
EuGen Администратор
Отправлено: 31 Мая, 2013 - 00:23:57
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Потому что $_POST и $_GET - это отсылки к POST и GET-данным, полученным скриптом. POST/GET - это методы HTTP-протокола, который представления не имеет, что будет делаться с этими данными и как их будет обрабатывать сервер, это просто протокол, он предназначен для обмена информацией, которая в любом случае будет строкой (потоком байт, если быть более точным)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
VestCoastman
Отправлено: 31 Мая, 2013 - 01:11:26
Post Id



Посетитель


Покинул форум
Сообщений всего: 374
Дата рег-ции: Дек. 2010  


Помог: 3 раз(а)




EuGen, понятно. Спасибо.

Тему можно закрывать.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB