2017-12-27 8 views
0

calendar jQuery를 사용하여 캘린더를 만들고 날짜를 제출할 때 SQL 테이블에 저장되지만 빈 결과로 표시됩니다. '09 -07-2017 '대신 '00 -00-0000'이 표시됩니다. 누군가 나를 도울 수 있습니까? 여기 내 코드입니다 : 나는 그것이 작동하지 않는 이유를 이해하지 않습니다SQL 날짜 형식이 빈 결과 (예 : 00-00-0000을 사용하여 jQuery 사용)

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 못해 제대로 날짜를 저장합니다. 당신이 jQuery를 DatePicker에서에서 사용중인 인 MySQL은

database

mysql

+0

https://stackoverflow.com/questions/9907210/mysql-date-formats-difficulty-inserting-a-date에서 확인할 수 있습니다. – Snowmonkey

답변

0

기본 날짜 형식 yyyy-mm-dd하지 dd-mm-yy입니다 :

이 출력됩니다. 데이터베이스로 보내기 전에 날짜를 포맷 할 수 있습니다, 또는 당신은 다른 같은 형식으로 제공하기 위해 DatePicker에서의 altField 기능을 사용할 수 있습니다 :

<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>를 추가했습니다 그것은 귀하의 코드에서 누락되었습니다. 적절한 양식 제출에 필요하기 때문에 name 속성을 input 상자에 추가했습니다.

관련 문제