我有以下datepciker:日期到SQL數據庫失敗
<script>
$(function() {
$("#datepicker").datepicker({
dateFormat: 'mm-dd-YYYY'
}).val(getTodaysDate(0)); // For current date
});
function getTodaysDate (val) {
var t = new Date, day, month, year = t.getFullYear();
if (t.getDate() < 10) {
day = "0" + t.getDate();
}
else {
day = t.getDate();
}
if ((t.getMonth() + 1) < 10) {
month = "0" + (t.getMonth() + 1 - val);
}
else {
month = t.getMonth() + 1 - val;
}
return (day + '/' + month + '/' + year);
}
</script>
輸入:
<input type="text" id="datepicker" name="datepicker">
在這裏,我想插入日期到我的MySQL數據庫。沒有錯誤消息,insert命令運行正常,但我的數據庫中的日期字段爲空/ NULL。
$date = $_POST['datepicker'];
$sql="INSERT INTO table (dt) VALUES ('$date')";
這是一些價值型問題或什麼?我的db中的dt
列是DATE
。
* UPDATE @Dwza: 所以我修改劇本:
dateFormat: 'YYYY-mm-dd'
和
return (year + '-' + month + '-' + day);
而你提到的鏈接建議INSERT
:
$parts = explode('-', $_POST['datepicker']);
$date = "$parts[2]-$parts[0]-$parts[1]";
$sql="INSERT INTO transfer (dt) VALUES ('$date')";
仍然沒有去。
**解決:
$date = "$parts[0]-$parts[1]-$parts[2]";
與jQuery或JavaScript不同,'$ _POST ['datepicker'];'PHP基於'name'而不是'id'獲取!! :) – NoobEditor
我剛剛也加了'name',檢查Daan的答案,但仍然一樣。 – fishmong3r
你在'$ _POST ['datepicker']'中獲得什麼值?如果它包含看起來像日期的東西,那麼格式可能不同(例如,yyyy-mm-dd與mm/dd/yyy),您將不得不更改日期選擇器格式或更改db語言環境。 –