从下拉列表中插入日期到访问数据库
我有下拉列表称为签入日期。 (年份,日期,月份)。从下拉列表中插入日期到访问数据库
<td>Check-in Date</td>
<td>:</td>
<td><select name="inmonth" id="inmonth">
<option value="-1">Month</option>
<option value="0">January</option>
<option value="1">February</option>
<option value="2">March</option>
<option value="3">April</option>
<option value="4">May</option>
<option value="5">June</option>
<option value="6">July</option>
<option value="7">August</option>
<option value="8">September</option>
<option value="9">October</option>
<option value="10">November</option>
<option value="11">December</option>
</select>
<select name="indate" id="indate">
<option value="-1">Date</option>
<option value="0">1</option>
<option value="1">2</option>
<option value="2">3</option>
<option value="3">4</option>
<option value="4">5</option>
<option value="5">6</option>
<option value="6">7</option>
<option value="7">8</option>
<option value="8">9</option>
<option value="9">10</option>
<option value="10">11</option>
<option value="11">12</option>
<option value="12">13</option>
<option value="13">14</option>
<option value="14">15</option>
<option value="15">16</option>
<option value="16">17</option>
<option value="17">18</option>
<option value="18">19</option>
<option value="19">20</option>
<option value="20">21</option>
<option value="21">22</option>
<option value="22">23</option>
<option value="23">24</option>
<option value="24">25</option>
<option value="25">26</option>
<option value="26">27</option>
<option value="27">28</option>
<option value="28">29</option>
<option value="29">30</option>
<option value="30">31</option>
</select>
<select name="inyear" id="inyear">
<option value="0">Year</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2011">2016</option>
</select></td>
我想在将其插入到访问数据库之前首先将inmonth,inyear和indate作为短日期转换。我应该使用什么语法?顺便说一句,我使用ASP。
我假设你正在选择下拉项的值在回传的话,
看看你能简单地选择验证他们的价值观和分析它们为有效日期之后。
您可以使用DateTime.Parse或DateTime.TryParse作为它,或者简单地将每个下拉列表的值传递给DateTime构造函数,然后在将数据提交给数据库之前,可以调用DateTime.ToShortDateString()以获取所需的日期。
这应该采取的输入,并将其转换为一个日期像2010-01-04
(YYYY-MM-DD
):
Dim inmonth, indate, inyear, thedate
inmonth = CInt(Request.Form("inmonth")) + 1
indate = CInt(Request.Form("indate")) + 1
inyear = Request.Form("inyear")
thedate = inyear & "-" & Right(CStr(inmonth + 100), 2) & "-" & Right(CStr(indate + 100), 2)
If NOT IsDate(thedate) Then
Response.Write "Invalid date"
Else
' do something else ... '
End If
注:的Right(CStr(variable + 100), 2)
代码片段是添加一个前导零。
嗨,我试图做像你告诉我,但我得到的数据类型不匹配错误CInt.This是我当前的代码 '如果的request.form(“提交”)=“提交” then' \t '暗淡inyear,铟酸,inmonth,theindate' \t 'inmonth = CINT(的request.form( “inmonth”))+ 1' '铟酸= CINT(的request.form( “铟酸”))+ 1' 'inyear (CStr(inmonth + 100),2)&“ - ”&Right(CStr(indate + 100),2)'request.form(“inyear”)' \t 'theindate = inyear& \t 'SQL =“插入保留(Checkin_Date)值(#”& theindate&“#)”' \t \t 'connection.execute SQL'' – Azie 2012-01-05 02:57:52
'CInt'不是必需的,所以如果它给出问题,您可以将其删除。 – stealthyninja 2012-01-05 07:29:05
它的工作原理!谢谢!! :) – Azie 2012-01-05 09:51:50
如果你使用asp,那么你应该给它加上asp标签......我做到了,我确定这就是你的意思.. – 2012-01-04 14:35:22
umm,我以前用错了标签。我的意思是说如何将它转换成经典的asp。 – Azie 2012-01-04 15:07:47