首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL日期格式显示空白结果(使用jQuery,例如00-00-0000)

问SQL日期格式显示空白结果(使用jQuery,例如00-00-0000)
EN

Stack Overflow用户
提问于 2017-12-28 01:39:05
回答 1查看 144关注 0票数 0

calendar我正在使用jQuery创建日历,当我提交日期时,它会存储在我的SQL表中,但作为空白结果,显示的不是'09-07-2017‘,而是'00-00-0000',有人能帮我吗?下面是我的代码:

代码语言:javascript
复制
    Index.PHP:

    <!doctype html>
    <html lang="en">
    <head>
    <section class="main-container">
    <div class="main-wrapper"> 
    <form class="calendar-form" action="button.inc.php" method="POST">
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
      <link rel="stylesheet" href="/resources/demos/style.css">
      <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
      <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
      <script>
      $( function() {
        $( "#datepicker" ).datepicker({
        dateFormat: "yy-mm-dd",


        } );
      } );
      </script>
    </head>
    <body>

    <p>Date: <input type="text" id="datepicker"></p>
     <button type="submit" name="submit">Check Availability</button>

    </body>
    </html>
    Button.Inc.PHP:

  <?php
if (isset($_POST['submit'])) {

    include_once 'database.inc.php';

    $date = mysqli_real_escape_string($conn, $_POST['datepicker']);


    $sql = "INSERT INTO system (date) VALUES ('$date');";
     $result = mysqli_query($conn, $sql);



}

?>
    Dbh.Inc.PHP:

<?php


$dbServername = "localhost";
$dbUsername = "root";
$dbPassword = "";
$dbName = "calendar";

$conn = mysqli_connect ($dbServername,$dbUsername,$dbPassword,$dbName);

// Create connection
$conn = mysqli_connect($dbServername, $dbUsername, $dbPassword, $dbName);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

我不明白为什么它不能工作,SQL和jQuery的格式是一样的,但是由于某些原因,SQL不能正确地存储日期。

这是输出:

​

​

​

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-28 01:49:40

MySQL中的默认日期格式是yyyy-mm-dd,而不是您在jQuery DatePicker中使用的dd-mm-yy。您可以在将日期发送到数据库之前对其进行格式化,也可以使用DatePicker的altField功能提供如下所示的替代格式:

代码语言:javascript
复制
<script>
    $( function() {
        $( "#datepicker" ).datepicker({
            dateFormat: "dd-mm-yy",
            altFormat: "yy-mm-dd",
            altField: "#mysql_date",
        });
    });
</script>

<form>
    <input type="hidden" id="mysql_date" name="mysql_date" />
    <p>Date: <input type="text" id="datepicker" name="datepicker" /></p>
    <button type="submit" name="submit">Check Availability</button>
</form>

注意:我添加了一个<form>,因为我发现代码中缺少它,我还向input框添加了name属性,因为正确的表单提交需要它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47996397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档