За последние 24 часа нас посетили 16573 программиста и 1555 роботов. Сейчас ищут 1938 программистов ...

Передача в поле таблицы NULL переменной

Тема в разделе "PHP и базы данных", создана пользователем vAzna, 19 ноя 2008.

  1. vAzna

    vAzna Активный пользователь

    С нами с:
    19 ноя 2008
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте!

    Имеется БД на postgresql.

    Нужно из php присвоить значение поля БД, равное NULL. Допустим я делаю вот так:

    PHP:
    1.  
    2. $mac = (trim($_POST["mac"]));
    3. if (empty($mac))
    4. $mac = "NULL";
    5.  
    6. //тут объявляется ещё много переменных...
    7.  
    8. //сам запрос
    9.  
    10. $query2 = "INSERT INTO dlink (type, ip, mac, box, vlan_id, street, house, prefix, entrance, state) VALUES
    11. ('$type', '$ip_i', $mac, '$box', '$row[0]', '$street', '$house', '$prefix', '$entrance' '$state')";
    12.  
    В ручную в psql естественно всё работает, но в php я незнаю как это сделать.
    Да, забыл сказать, что просто не указывать это поле в запросе - не устраивает, ибо многие поля могут быть пустыми и для каждого случая писать свой запрос не тру.
     
  2. Служебное слово NULL не обрамляется кавычками. PHP тут не при чем.
     
  3. admyx

    admyx Активный пользователь

    С нами с:
    14 мар 2008
    Сообщения:
    2.159
    Симпатии:
    1
    $sql = 'INSERT INTO `dlink` (`description`) VALUES (null)';

    или

    $description = 'null';
    $sql ='INSERT INTO `dlink` (`description`) VALUES ('.$description.');

    За правильность не ручаюсь, но работает)))))