Как передать в MySQL NULL т.е. например $var_one = "ТЕКСТ ТЕКСТ" $var_two = ""; //Тут должен быть NULL $sql = "INSERT INTO table_name (text, name) VALUES ($var_one, $var_two)"; //В столбец name должен был передаться NULL, как это сделать?
INSERT INTO my_table (phone) VALUES (NULL); Отсюда http://www.php.ru/mysql/problems.html#p ... -with-null
так не работает Работает вот так $var_two = 'NULL'; В таком случае как быть в такой ситуации VALUES ('$var_two') ???? Получается так, что в базу записывается слово NULL А если вот так написать VALUES ($var_two) Тогда записывается именно значение NULL Однако переменная $var_two должна содержать либо слово либо ничего, как решить проблему?
Горбунов Олег Так ты новичЁк гы гы гы . memphis PHP: <? if (empty($var_two)) //==true если $var_two == null||''||0 подроьнее см мануал $var_two = 'NULL'; else $var_two = "'{$var_two}'"; ?>
хм. А нафига вообще NULL записывать в таблицу? Просто я так не делаю =) Если надо записать NULL — исключаю его из списка в INSERT.
Горбунов Олег Я тоже так не помню когда так делал, но разница действительно есть. К примеру есть ряд конструкций для проверки NULL в mysql: is null, ifnull(), etc. А вот вспомнил "недавно" так извращался, там для COM объекта (выполняющего энкодинг контента) требовалось чтобы параметры были переданы именно тех типов которые должны быть. То есть если поле integer, то передана должна быть цифра или null, при этом любая цивра - это значение, и значение параметров изменялись в интерфесе юзверя. Вот там мне пришлось дописать две строчки чтобы точно писалось не 0 а NULL. Потому как это были разные значения.