Avatar billede morten_soegaard Nybegynder
23. oktober 2004 - 10:37 Der er 7 kommentarer og
1 løsning

Skrive dato til database

Hej
Jeg har et sikkert simpelt spørgsmål, jeg har et script som skal skrive nogle oplysninger til en database de fleste kommer fra en form men datoen gør ik, det er bare datoen på når man indtaster det.

Koden ser sådan her ud:


<body>

<%
type2 = Request("type2")
info = Request("info")


Set my_conn = Server.CreateObject("ADODB.Connection")
my_conn.Open "Driver={MySQL ODBC 3.51 Driver}; Server=localhost; Database=...; UID=...; PWD=...;"

strSQL = "SELECT * FROM handel"

set rs = Server.CreateObject("ADODB.Recordset")

rs.Open strSQL, my_conn, 1, 3
%>
                 
                <%
                if Request.ServerVariables("REQUEST_METHOD") = "POST" then
                       
if type2 = "" then
  Response.Write("Du skal vælge en type!<br>")
                end if   
               
if info = "" then
  Response.Write("Du skal skrive en tekst!<br>")
                end if
                               
             
       
                    if type2 <> "" AND info <> "" then
                    rs.AddNew
rs("dato") = Response.Write FormatDateTime(Now, vbShortDate)
rs("type2") = Request.form("type2")
rs("info") = Request.form("info")
                   
                   
                    rs.update
                    Response.Redirect("handelsplads.asp")
                    end if
                    end if %>
                   
                    <% rs.close
    Conn.Close
    set Conn = nothing
    %>
                   

</body>



Det er denne del af koden den melder fejl i:
rs("dato") = Response.Write FormatDateTime(Now, vbShortDate)

Håber i kan hjælpe.
Avatar billede morten_soegaard Nybegynder
23. oktober 2004 - 10:38 #1
Og forresten i databasen er deltet dato af typen date. dvs. YYYY-MM-DD
Avatar billede vigilante Nybegynder
23. oktober 2004 - 10:44 #2
Du skal vel ikke have en response.write men bare formatdatetime(now, vbshortdate)
Avatar billede morten_soegaard Nybegynder
23. oktober 2004 - 10:56 #3
Okay det virker men nu har jeg et problem til. Det er når jeg skal vise værdierne fra databasen... Så melder den fejl i dette kode.

<%


Set my_conn = Server.CreateObject("ADODB.Connection")
my_conn.Open "Driver={MySQL ODBC 3.51 Driver}; Server=localhost; Database=...; UID=...; PWD=...;"

strSQL = "SELECT * FROM handel order by dato"

' Execute SQL statement
Set rs = my_conn.Execute(strSQL)

if rs.eof then
response.write "<p>Der er ikke noget i databasen</p>"
end if

Do while not rs.eof
%>
<table border="1" class="kalender" cellspacing="1" cellpadding="0" bordercolorlight="#000000" bordercolordark="#FFFFFF">
<tr>
<td width="80px" align="center">
<%datoa=split(rs("dato"),"/")
Dato = datoa(1)&"-"&datoa(0)&"-"&datoa(2)%>
<%Response.Write " " & Dato & "<br>"%>
</td>
<td>
<% Response.Write " "& rs("info") & "<br>" %>
</td>
</tr>


<% rs.MoveNext
loop %>

</table>

<%
my_conn.close ' Close database connection
Set my_conn = nothing 'obj variable released
%>


Den melder denne fejl:
Microsoft VBScript runtime error '800a000d'

Type mismatch

/test/handelsplads.asp, line 37

I linie 37 står der <td> ??? Det synes jeg virker underligt.
Avatar billede vigilante Nybegynder
23. oktober 2004 - 11:13 #4
Det er vel et nyt spørgsmål =)
Avatar billede vigilante Nybegynder
23. oktober 2004 - 11:15 #5
Prøv at se hvad sourcen viser når siden vises i IE
Avatar billede vigilante Nybegynder
23. oktober 2004 - 12:05 #6
ja det kan ikke være en td, så prøv evt at lave nogle respons.write for at finde ud af hvilken linie det er der fejler
Avatar billede hmortensen Nybegynder
23. oktober 2004 - 12:13 #7
du kan formatere din dato direkte i udtrækket:
SELECT *, DATE_FORMAT(dato, "%d-%m-%Y") AS nydato FROM handel ORDER BY dato
Avatar billede morten_soegaard Nybegynder
17. december 2004 - 10:55 #8
Lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester