当日期为空时,Mysqli 不会插入


mysqli won't insert when date is null

在我的

表中,有一个名为 receivedOn 的列,它是一种日期类型。 所以如果我这样做

$receivedOn= "2013-11-11";
$stmt = $dbi->prepare("insert into mytable(somedata,receivedOn) values (?,?)");
$stmt->bind_param('ss',$somedata,$receivedOn); 
$result = $stmt->execute() or die (mysqli_error($dbi)");

它将成功插入数据,但如果$receivedOn为空,则不会插入数据,并且看起来只是挂在那里。 未返回任何错误。 如何使 mysqli 插入数据,即使 receiveOn 为空?我可以使用普通的 mysql 查询(非 mysqli)插入带有 emtpy 接收的数据

尝试执行以下操作:

$receivedOn = ($receivedOn != '') ? $receivedOn : NULL;
$stmt = $dbi->prepare("insert into mytable(somedata,receivedOn) values (?,?)");
$stmt->bind_param('ss',$somedata,$receivedOn); 
...