php - 以 HTML 形式更新 MySQL 行的 jQuery 日期选择器

标签 php jquery mysql datepicker

我已经对这个主题进行了大量研究,但出于某种原因没有任何效果!

我想使用日期选择器小部件来更新 MySQL 中的一行(它有一个日期列)。出于某种原因,每当我尝试更新行(适用于其他输入内容)时,它都会在我的 MySQL 表 0000-00-00 中显示 ??

这是我的 jQuery 代码:

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

还有我的 HTML:

<p> Date: <input name="slot_date" id="datepicker" > &nbsp; <input type="text" id="alternate" size="30"></p>

我的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";
 } 
}

无论如何,我已经尝试了很长时间,但日期选择器不会进入我的 MySql 表??

最佳答案

使用strtotime()date()强制执行您想要的格式。

$slot_date = date('Y-m-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 注入(inject)。请引用http://php.net/manual/en/security.database.sql-injection.php .

关于php - 以 HTML 形式更新 MySQL 行的 jQuery 日期选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38964225/

相关文章:

mysql - 如何加入这些查询?

mysql - 通过 LEAD/LAG 或递归 CTE 更新?

javascript - 数据库查询后启用/禁用按钮

php - 在 php 中内存斐波那契函数

php - 大型 .PDF 文件未通过 PHP 作为中型 BLOB 上传到 MySQL 数据库,2MB 以下的文件工作正常

jquery - 多级动态列表 jQuery

javascript - 使用日期选择器的另一个字段中的日期自动填充新字段

javascript - 如何在不破坏菜单的情况下更改价格大小?

mysql - 我可以将 mysql 与 .net 应用程序一起使用吗...或者它只能与 php 一起使用

PHP 类 - 使用普通变量而不是属性更可取吗?