在php中提交编辑表单后,Date返回空值

在php中提交编辑表单后,Date返回空值,php,mysql,Php,Mysql,在php中提交编辑表单后,Date返回空值 HTML代码是 <form class="form-horizontal" action="" method="post" > <label for="coupon_strt_date" >Start Date</label> <input type="text" name="coupon_strt_date" id="datepicker" value="<?php echo

在php中提交编辑表单后,Date返回空值

HTML代码是

<form  class="form-horizontal"  action="" method="post" >
    <label for="coupon_strt_date" >Start Date</label>


     <input type="text" name="coupon_strt_date" id="datepicker"  value="<?php echo $cats_rows['coupon_strt_date'];  ?>" class='datepick'>
    <label for="coupon_exp_date" class="control-label">Exp Date</label>
    <input type="text" name="coupon_exp_date"  value="<?php echo $cats_rows['coupon_exp_date'];  ?>" id="datepicker" class='datepick'>

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


    <?php
include("config.php");

$tbl_name = "coupons";
if (isset($_POST['submit'])){
$id=$_POST['id'];
    $coupon_strt_date = $_POST['coupon_strt_date'];
    $coupon_exp_date = $_POST['coupon_exp_date'];

$sql="update $tbl_name set coupon_strt_date = STR_TO_DATE('$_POST[coupon_strt_date]', '%m/%d/%Y'), coupon_exp_date = STR_TO_DATE('$_POST[coupon_exp_date]', '%m/%d/%Y') where id='$id'";
if (!mysql_query($sql))
  {
 echo "Error Accured";
  }
  else {
 echo " Successfull";
  }
}

开始日期

您好,如果填写的日期变为空,请发送表的架构或提及日期字段的数据类型。日期字段变为null,因为您试图保存不正确的数据类型。
数据类型date接受yy-mm--dd格式的日期,并且您正在提供%m/%d/%Y格式,由于该格式,它将变为null。希望它能帮助你。

你确定这是你收到日期的格式吗?执行前输出查询“日期返回空值”是什么意思?您从数据库中读取日期,但这些日期未设置?是否未设置$u POST字段?请显示相关代码您不能将数组变量放入字符串中,或者使用
$优惠券\u str\u date
并在查询前转义变量以防止SQL注入是此格式是%m/%d/%Y正确的。但是错误samewhat is the table schema?优惠券表中“优惠券交易日期”和“优惠券交易日期”列的数据类型是什么?有上传日期吗?如果您知道应答数据类型date accept date为yy mm--dd格式,并且您给出的是%m/%d/%Y格式,则请告知我,因为该格式将变为空。希望它能帮助你。正如我在回答中提到的那样。我在这里找到了解决办法