[英]How make validation of Date with datetime work with jquery(date picker) for php?
腳本(jquery)用於使輸入[日期]可被多個瀏覽器訪問(日期選擇器)
<script>
$(function(){
if (!Modernizr.inputtypes.date) { //if browser doesn't support input type="date", initialize date picker widget:
// If not native HTML5 support, fallback to jQuery datePicker <script src="js/realtime_validityScript.js">
$('input[type=date]').datepicker({
// Consistent format with the HTML5 picker
**dateFormat: 'dd-mm-yy',**
maxDate: 0
},
// Localization
$.datepicker.regional['it']
);
}
});
</script>
2- PHP代碼,用於在禁用jquery的情況下由用戶驗證日期格式(不起作用)-也不確定如何使用DateTime :: getLastErrors()
// specify your date's original format, in this example d/m/Y (e.g. 25/07/2014)
**$format = "d-m-Y";**
$date = DateTime::createFromFormat($format, $_POST['DateField']);
$date_errors = DateTime::getLastErrors();
if(? $date_errors[also dunno what to put here?] ) {
// createFromFormat returns false if the format is invalid;
echo 'Your date format is incorrect';
} else {
//change it to any format you want with format() (e.g. 2013-08-31)
$date->format('Y-m-d');
}
獲取日期的原始PHP代碼:(我的數據庫當前以“ Ymd”格式訪問數據庫)
if (empty($_POST["DateField"]) ) {
$errors['DateField'] = "Age is required";
} else {
$date = date("Y-m-d", strtotime( $_POST['DateField']));
}
我還希望輸入日期能夠將格式(“ dm-Y”,“ Y / m / d”,“ Ymd”,“ dm-Y”,“ d / m / Y”)轉換為“ Ym” -d'也許帶有某種數組?
注意:如果我刪除2部分,我的代碼可以正常工作
感謝您的支持...如果有人可以向我解釋錯誤和正確的代碼,PHP仍然很新
日期類型將不允許您使用所需的格式。 因此,不要使用type="date"
,而是使用type="text"
並將類date
添加到輸入字段中,以初始化datepicker,例如
....
$('input.date').datepicker({
// Consistent format with the HTML5 picker
dateFormat: 'dd-mm-yy',
maxDate: 0
},
....
然后更改HTML,
<input type="text" class="date" ..../>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.