24. september 2003 - 05:13
Der er
8 kommentarer og 2 løsninger
Insert dato i access
Hej Eksperter Jeg får: Provider error '80020005' Type mismatch. Jeg har lavet en form hvor man kan indsætte dato i en access db ved hjælp af 3 dropdown menuer. Dette er gjort for at undgå at få tidspunkt med. Eller i hvert fald for at den skal sætte 0'er ind i stedet for et tidspunkt. Det virker fint nok første gang jeg afprøver formen og siden done.asp vises. Trykker jeg på opret ny får jeg min form igen og når jeg submitter den anden gang opstår fejlen! Jeg har oprettet et andet felt i min db som hedder klokken hvor man taster tidspunkt ind for eventen. Kan man ikke nøjes med at bruge et date/time felt til det hele i stedet? HOW? dato feltet i min db er et date/time felt long date 'Åbner connection til databasen rs = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../database/database.mdb") Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open rs 'Hvis brugeren har submittet formularen if Request.ServerVariables("REQUEST_METHOD") = "POST" then 'Tjecker om felterne er udfyldt if (Request.Form("overskrift") <> "" AND Request.Form("indhold") <> "") then Set rs = Server.CreateObject("ADODB.Recordset") strSQL = "select * from auk" rs.Open strsql, conn, 1, 3 rs.AddNew rs("overskrift") = Server.HTMLEncode(Request("overskrift")) rs("indhold") = Server.HTMLEncode(Request("indhold")) rs("dato") = Server.HTMLEncode(Request.Form("day") & "-" & Request.Form("month") & "-" & Request.Form("year")) rs("klokken") = Server.HTMLEncode(Request("klokken")) rs.update Response.Redirect("done.asp") rs.Close set rs = nothing else Response.Write("<br>Du mangler at udfylde felter!<br><a href=opretauk.asp>Tilbage</a>") end if end if Min form ser sådan ud: Det jscript som er i formen kalder en dhtml editor frem over tekstfeltet <form action="?mode=submit" method="post" name="opretauk"> <table border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td class="menupunkt">Overskrift: <input name="overskrift" type="text" class="knap" style="width: 200px;"> Dato: <select name="day" size="1" class="knap"> <option value="01">01</option> <option value="02">02</option> <option value="03">03</option> <option value="04">04</option> <option value="05">05</option> <option value="06">06</option> <option value="07">07</option> <option value="08">08</option> <option value="09">09</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> </select> <select name="month" size="1" class="knap"> <option value="Januar">Januar</option> <option value="Februar">Februar</option> <option value="Marts">Marts</option> <option value="April">April</option> <option value="Maj">Maj</option> <option value="Juni">Juni</option> <option value="Juli">Juli</option> <option value="August">August</option> <option value="September">September</option> <option value="Oktober">Oktober</option> <option value="November">November</option> <option value="December">December</option> </select> <select name="year" size="1" class="knap"> <option value="2003" selected>2003</option> <option value="2004">2004</option> <option value="2005">2005</option> <option value="2006">2006</option> <option value="2007">2007</option> <option value="2008">2008</option> <option value="2009">2009</option> <option value="2010">2010</option> </select> Kl: <input name="klokken" type="text" class="knap" style="width: 50px;"></td> </tr> <tr> <td><textarea name="indhold" style="height: 110px; width: 700px;" class="knap"></textarea> <script language="JavaScript1.2" defer> editor_generate('indhold'); </script> </td> </tr> <tr> <td><input name="submit" type="submit" value="Tilføj Auktion" class="knap"></td> </tr> </table> </form>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
24. september 2003 - 08:48
#1
Prøv lige sådan her : rs.AddNew rs("overskrift") = Server.HTMLEncode(Request("overskrift")) rs("indhold") = Server.HTMLEncode(Request("indhold")) rs("dato") = Request.Form("day") & "-" & Request.Form("month") & "-" & Request.Form("year") rs("klokken") = Server.HTMLEncode(Request("klokken")) rs.update //>Rune
24. september 2003 - 08:49
#2
Altså alt i alt sådan her: 'Åbner connection til databasen rs = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../database/database.mdb") Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open rs 'Hvis brugeren har submittet formularen if Request.ServerVariables("REQUEST_METHOD") = "POST" then 'Tjecker om felterne er udfyldt if (Request.Form("overskrift") <> "" AND Request.Form("indhold") <> "") then Set rs = Server.CreateObject("ADODB.Recordset") strSQL = "select * from auk" rs.Open strsql, conn, 1, 3 rs.AddNew rs("overskrift") = Server.HTMLEncode(Request("overskrift")) rs("indhold") = Server.HTMLEncode(Request("indhold")) rs("dato") = Request.Form("day") & "-" & Request.Form("month") & "-" & Request.Form("year") rs("klokken") = Server.HTMLEncode(Request("klokken")) rs.update Response.Redirect("done.asp") rs.Close set rs = nothing else Response.Write("<br>Du mangler at udfylde felter!<br><a href=opretauk.asp>Tilbage</a>") end if end if Min form ser sådan ud: Det jscript som er i formen kalder en dhtml editor frem over tekstfeltet <form action="?mode=submit" method="post" name="opretauk"> <table border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td class="menupunkt">Overskrift: <input name="overskrift" type="text" class="knap" style="width: 200px;"> Dato: <select name="day" size="1" class="knap"> <option value="01">01</option> <option value="02">02</option> <option value="03">03</option> <option value="04">04</option> <option value="05">05</option> <option value="06">06</option> <option value="07">07</option> <option value="08">08</option> <option value="09">09</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> </select> <select name="month" size="1" class="knap"> <option value="Januar">Januar</option> <option value="Februar">Februar</option> <option value="Marts">Marts</option> <option value="April">April</option> <option value="Maj">Maj</option> <option value="Juni">Juni</option> <option value="Juli">Juli</option> <option value="August">August</option> <option value="September">September</option> <option value="Oktober">Oktober</option> <option value="November">November</option> <option value="December">December</option> </select> <select name="year" size="1" class="knap"> <option value="2003" selected>2003</option> <option value="2004">2004</option> <option value="2005">2005</option> <option value="2006">2006</option> <option value="2007">2007</option> <option value="2008">2008</option> <option value="2009">2009</option> <option value="2010">2010</option> </select> Kl: <input name="klokken" type="text" class="knap" style="width: 50px;"></td> </tr> <tr> <td><textarea name="indhold" style="height: 110px; width: 700px;" class="knap"></textarea> <script language="JavaScript1.2" defer> editor_generate('indhold'); </script> </td> </tr> <tr> <td><input name="submit" type="submit" value="Tilføj Auktion" class="knap"></td> </tr> </table> </form> //>Rune
24. september 2003 - 16:21
#3
Det giver desværre samme resultat. Type Mismatch i rs("dato") = Request.Form("day") & "-" & Request.Form("month") & "-" & Request.Form("year") sætningen.
24. september 2003 - 17:47
#4
du skal ikke have value="månedsnavnet" .. men værdien for måneden .. 01 02 03 04 osv...
24. september 2003 - 22:10
#5
Det virker også fint nok første gang, men anden gang kommer samme fejl. Er det muligt at fejlen ligger hos udbyderen?
24. september 2003 - 22:26
#6
tror mere det er pga af teksten .. eller at du vælger en ugyldig dato .. der er jo ingen validering i det du har lavet om datoen er gyldig
25. september 2003 - 00:33
#7
Ja det ser ud til at det nok er der fejlen ligger.. Den vil i hvert fald godt oprette events nu men kun på de dage som er "lovlige". Så må jeg jo bare i gang med at lave et tjek på det.. Smider du ikke lige et svar?
25. september 2003 - 00:48
#8
joeh kan jeg da godt ... :)
25. september 2003 - 00:53
#9
Du har tilfældigvis ikke lige en ved hånden jeg må låne?? :)
25. september 2003 - 01:08
#10
en datovalidator ... hmm... er der ikke en isdate-funktion .. mener jeg ... (er serverside)
Kurser inden for grundlæggende programmering