在我的表单上,我有一个不是必填字段的日期字段。我的问题是,如果用户没有填写此字段并且他们在mysql数据库上提交表单,而不是将该字段留空,则它将保存1969-12-31以及在同一天提交的任何后续表单如果此字段再次留空,则将具有1969-12-31的升序日期。我该怎么做才能让mysql将该字段留空。谢谢你的阅读。
以下是代码:
<input id="nfud" name="nfud" type="date" class="input-small"/>
Mysql提交查询
$nfud = date('Y-m-d', strtotime($_POST["nfud".$n.""]));
$query="insert into number_info (phone_number, data_plan, phone_used, fud, dealID)
values ('".$nphone_number."','".$ndata_plan."','".$nphone_used."','".$nfud."','$dealID')";
mysql_query($query) or die(mysql_error());
答案 0 :(得分:2)
如果您没有在表单中发布日期,请将字段留空:
if(isset($_POST["nfud$n"]) {
$nfud = date('Y-m-d', strtotime($_POST["nfud$n"]));
} else {
$nfud = "";
}
$query="insert into number_info (phone_number, data_plan, phone_used, fud, dealID)
values ('".$nphone_number."','".$ndata_plan."','".$nphone_used."', '".$nfud."','$dealID')";
mysql_query($query) or die(mysql_error());
编辑:试试这个让MySQL为你的列添加默认值
if(isset($_POST["nfud$n"]) {
$nfud = date('Y-m-d', strtotime($_POST["nfud$n"]));
$query="insert into number_info (phone_number, data_plan, phone_used, fud, dealID)
values ('".$nphone_number."','".$ndata_plan."','".$nphone_used."','".$nfud."','$dealID')";
} else {
$query="insert into number_info (phone_number, data_plan, phone_used, dealID)
values ('".$nphone_number."','".$ndata_plan."','".$nphone_used."','$dealID')";
}
mysql_query($query) or die(mysql_error());
答案 1 :(得分:0)
,给日期字段一个默认值0。
答案 2 :(得分:0)
可以使用默认设置和其他设置在mysql端控制。
你可以在mysql中运行以下命令并分享结果吗?
SHOW CREATE TABLE number_info;