0

mysql テーブルを更新しようとしています。値がない場合は null が必要ですが、$ODate が空の場合は 0 になります。実際、私は 0000-00-00 を取得しています。私がする必要があるのは、 ' ' を取り除くことです。そうすれば 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,
4

2 に答える 2

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

$query = "UPDATE tblLoads SET OrderDate = $ODate, ...";
于 2013-04-22T22:57:25.463 に答える
0

if else を使用して、NULL かどうかをチェックし、$ODateNULL である場合は引用符を使用せず、null でない場合は引用符を使用することができます。

例えば、

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

"UPDATE tblLoads SET OrderDate = $ODate,
于 2013-04-22T22:54:20.540 に答える