用于更新MySQL行的HTML表单中的jQuery datepicker

我已经完成了很多关于这个主题的研究,但出于某些原因,没有工作!

我想使用datepicker小部件来更新MySQL中的一行(它有一个日期列)。 出于某种原因,每当我尝试更新行(适用于其他输入的东西)时,它在我的MySQL table 0000-00-00中说?

这是我的jQuery代码:

 $( function() { $( "#datepicker" ).datepicker({ dateFormat:"yy-mm-dd", altField: "#alternate", altFormat: "DD, d MM, yy" }); $( "#selectable" ).selectable(); } );  

我的HTML:

 

Date:  

我的PHP:

  if( isset($_POST['btn-book']) ) { $slot_date = date('yy-mm-dd',strtotime($_POST['slot_date'])); $slot_line=$_POST['slot_line']; $reason=$_POST['reason']; $id=$_POST['id']; $sql="UPDATE appointments SET slot_date='$slot_date', slot_line='$slot_line', reason='$reason' WHERE id='$id'"; $result=mysql_query($sql); if($result){ header ("Location: homepage_loggedin_book_success.php"); }else { echo "ERROR"; } } 

无论如何,我已经尝试了很多年,但是datepicker不会进入我的MySql表?

使用strtotime()和date()强制执行所需的格式。

 $slot_date = date('Ym-d',strtotime($slot_date)); # will output 2016-08-16 $sql="UPDATE appointments SET slot_date='$slot_date', slot_line='$slot_line', reason='$reason' WHERE id='$id'"; 

您的代码可能容易进行SQL注入。 请参阅http://php.net/manual/en/security.database.sql-injection.php 。

在创建记录的原始表单中,是否正确设置了所有内容? slot_linereason字段是否正确更新? 如果它们不是问题可能在你的PHP中。 你能为上下文发布更多的PHP代码吗?