2014-12-15 2 views
0

Новичок PHP программист для моего некоммерческогоPHP - MySQL базы данных вставить нуль против 0

У меня есть форма, которая вставляет данные из нашего библиотекаря, чтобы ввести новую книгу.

Все работает при входе в новую книгу, за исключением этого.

, когда я иду на проверку, php server-side этот код включен в мою функцию проверки.

$YearPub = (int)$_POST['YearPub']; 

значение из формы является нулевым ($_post['['YearPub'])

но выше оператор возвращает 0 (нулевое значение) для $YearPub

Почему?

потратил часы на это сегодня. спасибо за помощь claudia

+4

Приведение '(int)' cast заставляет его преобразовать значение в число. Не делайте этого, если хотите сохранить исходное значение. – Barmar

ответ

1

Это потому, что ваше нулевое значение отлито от int.

Вы можете сделать простой тест echo (int)null;, чтобы увидеть это самостоятельно.

Here вы можете узнать больше о литье в int.

Смежные вопросы