更改数据库验证的日期格式

时间:2015-08-15 05:33:13

标签: php jquery mysql date datepicker

数据库中的日期很少。我必须使用jQuery datepicker选择另一个日期。但是限制是,我必须选择仅在数据库中的日期(在datepicker中)并在'alert'中显示该验证日期。这里的问题是在mysql中,日期格式是yyyy-mm-dd,而在datepicker中它是mm-dd-yyyy。我如何验证这两个日期?我已经搜索了很多解决方案,但没有找到任何解决方案。

数据库日期值和日期选择器选择位于同一文件中。 associate.php

echo "<center><table border=2 cellpadding=25 cellspacing=0 width=200 style='border-collapse:collapse;table-layout:fixed;width:210pt'></center>
<tr>
<th> S.No</th>
<th>Date</th>
<th>Event</th>
</tr>";
while($record = mysql_fetch_array($myData)){
  echo "<tr>";
  echo "<td>" . $record['S.No'] . "</td>";
  echo "<td>" . $record['Date'] . "</td>"; 
  echo "<td>" . $record['Event'] . "</td>";
  echo "</tr>";
}
echo "</table>";

echo "<form id=\"dateform\" name=\"dateform\" action=\"#\" method=\"POST\"><br><br>
<table>
<tr><td>
<b>Select a date &nbsp;&nbsp;<b></td><td><input id=\"datepicker\" name=\"date\"size=\"15\"/></td></tr>

</table>
<br>
<input type=\"submit\" name=\"submit\" value=\"Submit\" />&nbsp;
</form>";

以下是从datepicker中选择日期的代码。

<script>
$(document).ready(function () {
  $("#datepicker").datepicker();
  $('form#dateform').submit(function(){ 
    var aselectedDate = $('#datepicker').val();
    if(aselectedDate !=''){
      alert('You have selected ' + aselectedDate);
    }
    return false;
  });
});
</script>

1 个答案:

答案 0 :(得分:1)

最简单的解决方案是将Datepicker配置为生成与从数据库中收到的日期格式相同的日期格式,即:

<script>
$(document).ready(function () {
    $("#datepicker").datepicker({
       dateFormat: "yy-mm-dd"   
    });

// other code ...

</script>

查看jQuery Datepicker参考,了解如何处理不同日期格式的更多详细信息:

http://api.jqueryui.com/datepicker/

P.S。特别是,请查看日期格式语法:

http://api.jqueryui.com/datepicker/#utility-formatDate

例如,它不支持yyyy。如果您需要四位数年份,请使用yy