INSERT NULL, если поле оставлено пустым (десятичное) MySQL / PHP - PullRequest
1 голос
/ 07 октября 2011

У меня есть if NULL echo "Message" else $value.

Есть некоторый JavaScript, скрывающий поле ввода, поэтому они проверяют его и вводят значение.

Ifони не проверяют его, чтобы ввести поле, БД вводит 0,00 и не указывает NULL, поэтому мой оператор PHP if работает.

Как мне установить переменную как NULL, если она пустаили установите NULL в операторе INSERT?

`myTableField` decimal(10,2) default NULL,

1 Ответ

0 голосов
/ 07 октября 2011

Не знаю точно, что вы ищете, но вы можете запустить приведенный ниже оператор if, чтобы проверить, какое значение было введено, и установить в ноль соответственно:

if(!is_numeric($fieldvalue) || $fieldvalue==0){
  // if the entered value isnt a number (i.e. isnt entered, or invalid) or if the value is zero, sounded like it was your default
  $fieldvalue=NULL;
  // could also use unset($fieldvalue);
}

Если переменная $ fieldvalue установлена ​​в null (или не установлена), она будет вставлена ​​в вашу БД как NULL в соответствии с вашими определениями полей. Убедитесь, что ваш оператор вставки ссылается на значение без 'или "инкапсулирующих цифр, однако (не требуется в качестве десятичного поля).

...