如何使用NULL值更新

时间:2013-04-22 22:51:24

标签: php

我正在尝试更新mysql表。如果没有值我想要null但是如果$ ODate为空我得到0。其实我正在收到毛刺。我需要做的是摆脱''然后它将采用NULL值,但如果有一个有效的日期值它就不起作用。

if (($_POST['OrderDate'])==null){$ODate='NULL';}else {$ODate=$_POST['OrderDate'];}

//这将更新有效日期,但如果设置为NULL

则返回0000-00-00
"UPDATE tblLoads SET OrderDate = '$ODate',

//这将更新NULL,但如果有效日期

则返回0000-00-00
"UPDATE tblLoads SET OrderDate = $ODate,

2 个答案:

答案 0 :(得分:1)

$ODate = empty($_POST['OrderDate']) ? "NULL" : "'$_POST[OrderDate]'";

$query = "UPDATE tblLoads SET OrderDate = $ODate, ...";

答案 1 :(得分:0)

你可以有一个if else,检查$ODate是否为NULL,如果是,则不使用引号,如果它不为空,则使用引号。

如,

if (!is_null($ODate)) {
  $ODate = "'" . $ODate . "'";
}

"UPDATE tblLoads SET OrderDate = $ODate,