2010-12-03 65 views
0

我有一個表單,用戶需要插入日期。該日期然後由程序用於確定到期日期。我的問題是,用戶如何在表單中插入日期以便將其存儲在mysql日期單元格中,這是最好的方法。用戶在表單中插入日期

謝謝!

回答

2

使用類似這樣的前端:

http://jqueryui.com/demos/datepicker/

如果你不想操縱PHP日期字符串,設置日期選擇在YYYY-MM-DD格式的工作(這在MySQL DATE類型中使用)。然後用Javascript或作爲表格的一部分發送您的信息。

1

我同意@treeface。使用jQuery的DatePicker,但使用本地化爲您的國家用戶的日期格式。它發生在我身上,世界各地的人們使用不同的時間格式。注意這一點。您可以使用MySQL DATE(YYYY-MM-DD),DATETIME(YYYY-MM-DD HH:MM:SS)或UNIX TIMESTAMP將時間存儲在數據庫中。比較日期很簡單,有很多腳本可以閱讀。使用您的控制器將數據發送到您的模型,進行比較,並根據結果返回TRUE/FALSE。使用該布爾值,您可以將結果顯示給用戶。另外,你可以使用jQuery來完成。將所選日期發送到服務器,比較並返回JSON響應,並返回OK/NOTOK狀態。

例如:

 

<head> 
.... 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<link rel="stylesheet" href="path/to/jquery-ui-1.8.4.css" type="text/css" media="screen" /> 
<script type="text/javascript" src="path/to/jquery-ui-1.8.4.min.js"></script> 
.... 
</head> 

<script type="text/javascript"> 
$("input#datepicker").datepicker({ 
    showOn: 'both', 
    buttonImageOnly: true, 
    buttonImage: 'images/calendar-trans.png', 
    firstDay: 1, 
    dateFormat: "dd/mm/yy", // Select a time format that suits you 
    changeMonth: true, 
    changeYear: true, 
    onSelect: function(dateText, inst) { 
     $.post(url+"/calendar/check_date/", 
     { 
      date_selected: $("input#datepicker").val(); 

     },function(data){ 
      if(data.status != 'OK'){ 
       alert('Your date is wrong. Try again!'); 
      } 
     }); 
    } 
}); 
</script>