使用PHP从文本框插入MySQL的日期列
我有一个带有不同字段的表单,使用PHP和HTML都可以正常工作。 并且有一个MySQL数据库。 我有两个列的名称是使用PHP从文本框插入MySQL的日期列,php,mysql,database,insert,Php,Mysql,Database,Insert,我有一个带有不同字段的表单,使用PHP和HTML都可以正常工作。 并且有一个MySQL数据库。 我有两个列的名称是from和to 和表单字段,如: 输入类型为TEXT 数据库字段数据类型为DATE From: 收件人: 问题是插入查询卡在from和to字段上。 然后数据库中的条目是0000-00-00和0000-00-00 插入查询: $db->Execute("insert into leave_app (leave_type,name,eid,dept,desig,from,to)
from
和to
和表单字段,如:
输入类型为TEXT
数据库字段数据类型为DATE
From:
收件人:
问题是插入查询卡在from
和to
字段上。然后数据库中的条目是
0000-00-00
和0000-00-00
插入查询:
$db->Execute("insert into leave_app (leave_type,name,eid,dept,desig,from,to)
values('".$leave."' , '".$name."' , '".$empid."' , '".$dept."' , '".$desg."' , '".$from."' , '".$to."')");
MySql数据库将仅采用yyyy-mm-dd格式,前提是您的文本在插入之前未转换该格式
$from = date('Y-m-d',strtottime($from));
$to = date('Y-m-d',strtottime($to));
试试看
$(function(){
$("#departuredate").datepicker({ dateFormat: 'yy-mm-dd' });
$("#arrivaldate").datepicker({ dateFormat: 'yy-mm-dd' }).bind("change",function(){
var minValue = $(this).val();
minValue = $.datepicker.parseDate("yy-mm-dd", minValue);
minValue.setDate(minValue.getDate());
("#arrivaldate").datepicker( "option", "minDate", minValue );
})
});
Htlml代码
<div class="tmInput">
<span>Check In Date</span>
<input type="text" name="arrivaldate" id="arrivaldate" data-constraints="@NotEmpty @Required @Date" />
</div>
<div class="tmInput ">
<span>Check Out Date</span>
<input type="text" name="departuredate" id="departuredate" data-constraints="@NotEmpty @Required @Date" />
</div>
登记日期
退房日期
试试这个..
Mysql数据库日期格式yyyy-mm-dd
$fromdate=$_POST['from'];
$todate=$_POST['to'];
$from = date('Y-m-d',strtottime($fromdate));
$to = date('Y-m-d',strtottime($todate));
$db->Execute("insert into leave_app (leave_type,name,eid,dept,desig,from,to) values('".$leave."' , '".$name."' , '".$empid."' , '".$dept."' , '".$desg."' , '".$from."' , '".$to."')");
您的查询在哪里?输入日期的格式是什么?您没有在查询中添加“发件人”和“收件人”字段。我已经检查了输入“23-12-2014”和“2014-12-23”后的条目,但数据库仍然显示0000-00-00。很抱歉,新查询是:$db->Execute(“插入到请假应用程序(请假类型、名称、eid、部门、设计、发件人、收件人)值('“$leave.”、“$name.”、“$empid.”、“$dept.”、“$desg.”、“$from.”、“$to.”)等;当使用
2014-12-23
forto
或from
将导致0000-00-00
时,我很确定您的代码中的其他地方有错误。您可以执行echo“插入到leave_应用程序(leave_type、name、eid、dept、desg、from、to)值(“$leave.”、“$name.”、“$empid.”、“$dept.”、“$desg.”、“$from.”、“$to.”)
就在$db->Execute
之前,并在此处显示该输出。无论何时建议使用第三方库,都应说明是哪一个。虽然很明显,$
是jQuery,但从哪个库日期选择器
可能不再明显。数据约束也是如此=“@NotEmpty@Required@Date”
。发帖后检查你的答案,看是否所有的格式都有效。如何纠正这个标签中的问题你能解释一下吗?我不太明白你在问什么。您想知道如何只使用PHP和MySQL而不使用任何JS来回答OP的问题吗?