Моя страница отправляет используя ajax-данные в php-скрипт.одна из переменных, которую получает скрипт: $ product_disc теперь небольшой тест, который я провел внутри скрипта, ясно показал, что $ product_disc равен нулю.the test:
if ($product_disc == null)
{$test="null";}
else {$test="not null";}
Я заставляю свой код возвращать $ test в вызывающую процедуру ajax:
$return_array['success'] = array ('test' => $test);
И, используя Firebug, я вижу, что ответ ajax имеет: "test": "null "
Итак, я заключаю, что $ product_disc имеет значение: null
Теперь внутри моего скрипта я использую следующий код для вставки данных в базу данных MySql:
$stmt = mysqli_prepare($link, "INSERT INTO set_products (id,discount) VALUES (NULL , ?)");
mysqli_stmt_bind_param($stmt, "i", $product_disc);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
Запрос выполняется, но введенное значение равно 0, а не NULL!
Только когда я явно добавил: $ product_disc = null;перед инструкциями MySqli было вставлено значение NULL.
Почему это так?В чем разница между нулем и нулем?Я следовал за этим ответом в stackoverflow, надеясь, что я мог бы легко вставить NULL, но потом возникла эта проблема ...
Спасибо!
PS @stackoverflow team - Ваша проверка орфографиисловарь не распознает слово stackoverflow!