将 html 日期选择器设置为 null

Set html datepicker to null

我在 php 页面上有一个表单,用于提交有关事件的信息。提交的信息存储在 MySQL 数据库中。

当用户没有select日期选择器中的日期时,0000-00-00 将被插入到数据库中。该列默认设置为 null,使我认为此行为是由日期选择器引起的。

谁能提出允许插入空值的方法?

注意 - 我使用的是默认的 html 日期选择器,而不是 jqueryUI 版本。

编辑 - 仔细检查是因为数据库中的数据类型是日期,与日期选择器无关。

形式

<form action="add_event.php" method="post">

    <div class="textWrap">
        <label for="dateEndInput" id="title3">End Date</label>
        <input id="dateEndInput" name="dateEndInput" type="text" value="" tabindex="3">
    </div>

        <input name="submit" type="submit" value="Submit" />

</form>

提前致谢

在执行 SQL 事务之前添加一个额外的 PHP 语句,专门检查该值和 var 类型,然后在符合这些条件的情况下将其设置为 null 怎么样?

if ($date && $date === '0000-00-00') {
    $date = null;
}

或者,有一个内置的 date_parse 函数

$date = '0000-00-00';
$parse_date = date_parse($date);

if ($parse_date['error_count'] > 0) {
    $date = null;
}

但是,还有一个数据库端解决方案,您可以在其中更改列以不接受 0000-00-00 作为日期。参见 http://dev.mysql.com/doc/refman/5.1/en/sql-mode.html#sqlmode_no_zero_date