2016-08-28 70 views
1

我有一個調查表與jQuery日期選擇器,但我有問題獲取日期插入MySQL數據庫。結果不斷出現全零。有問題插入jQuery datepicker到MySQL

我的PHP和MySQL技能不是很好,所以一點幫助將不勝感激。

數據庫中的日期格式是日期時間。

我的代碼如下。

<input type="text" name="surveydate" id="datepicker"> 

<?php 
session_start(); // Session starts here. 

$servername = ""; 
$username = ""; 
$password = ""; 
$dbname = ""; 

$_SESSION['firstname'] = $_POST['firstname']; 
$_SESSION['lastname'] = $_POST['lastname']; 
$_SESSION['gender'] = $_POST['gender']; 
$_SESSION['postcode'] = $_POST['postcode']; 
$_SESSION['surveydate'] = $_POST['surveydate']; 

$firstname = $_SESSION['firstname'] ; 
$lastname = $_SESSION['lastname']; 
$gender = $_SESSION['gender']; 
$postcode = $_SESSION['postcode']; 
$surveydate= $_SESSION['surveydate']; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "INSERT INTO results (firstname,lastname,gender,postcode,surveydate) 

VALUES ('$firstname','$lastname','$gender','$postcode','$surveydate')"; 

$today = date("d M Y"); 

if ($conn->query($sql) === TRUE) { 

} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 

$conn->close(); 

?> 
+0

你在phpmyadmin中使用了什麼樣的數據類型? –

+0

以下也提供瞭解決方案並說明理由。試試這些。 :) –

回答

1

因爲如果surveydate數據類型日期你必須使用「YMD」格式輸入到數據庫其他明智它會進入只能作爲「0000-00-00」 。

確保這兩種方法中的任何一種都能找到你的代碼更好的效果。

方法1:更改jquery datpicker本身的數據類型。

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

方法2:更改日期的格式,而進入到DB

替換:

$_SESSION['surveydate'] = $_POST['surveydate']; 

隨着:

$_SESSION['surveydate'] = date('Y-m-d',strtotime($_POST['surveydate'])); 

採用任何一種方法。如果您使用method1,則無需按照方法2進行操作,反之亦然。

+0

@菲爾。如果你已經獲得瞭解決方案,你可以接受我的答案作爲最好的一個權利:)。希望你能用這個信用來支持我。 –

+0

hello @Naresh Kumar.P是的,你說得對,我剛剛接受。謝謝您的幫助。 – Phil