Avatar billede fcdong Nybegynder
08. december 2008 - 20:53 Der er 18 kommentarer

Bytter om på datoerne når siden bliver opdateret

Jeg skal høre om der er en som kan se hvad der går galt her.
Hver gang jeg opdatere denne side, så ændre de 3 dato felter fra dd-md-yyyy til md-dd-yyyy og tilbage igen hvis jeg opdatere siden igen.
Her er den del hvor jeg opdatere siden.
---------------------------
<%
If (CStr(Request("MM_update")) = "form1") Then
  If (Not MM_abortEdit) Then
    ' execute the update
    Dim MM_editCmd

    Set MM_editCmd = Server.CreateObject ("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_ConnOuresport1_STRING
    MM_editCmd.CommandText = "UPDATE nyhed SET Overskrift = ?, Dato = ?, brodtekst = ?, nyhedforsiden = ?, billedetekst1 = ?, visnyhed = ?, Visnyhedforside = ?, Starte = ?, slut = ? WHERE NyhedID = ?"
    MM_editCmd.Prepared = true
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 203, 1, 536870910, Request.Form("Overskrift")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(Request.Form("Dato"), Request.Form("Dato"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 203, 1, 536870910, Request.Form("brodtekst")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param4", 203, 1, 536870910, Request.Form("nyhederforsiden")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param5", 203, 1, 536870910, Request.Form("billedetekst1")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param6", 5, 1, -1, MM_IIF(Request.Form("visnyhed"), 1, 0)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param7", 5, 1, -1, MM_IIF(Request.Form("visnyhedforside"), 1, 0)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param8", 135, 1, -1, MM_IIF(Request.Form("Starte"), Request.Form("Starte"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param9", 135, 1, -1, MM_IIF(Request.Form("slut"), Request.Form("slut"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param10", 5, 1, -1, MM_IIF(Request.Form("MM_recordId"), Request.Form("MM_recordId"), null)) ' adDouble
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close

    ' append the query string to the redirect URL
    Dim MM_editRedirectUrl
    MM_editRedirectUrl = "nyheder_oversigt.asp"
    If (Request.QueryString <> "") Then
      If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
        MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
      Else
        MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
      End If
    End If
    Response.Redirect(MM_editRedirectUrl)
  End If
End If
%>
-------------------------
Avatar billede fcdong Nybegynder
08. december 2008 - 22:05 #1
Jeg har opdaget en lille sjov ting omkring disse dato ændringer. Hvis dd er under 13 bytter den om på dd-md. Hvis dd er over over 12 bytter den ikke om på disse tal mere. Er der nogen som har en god forklaring på dette?
Avatar billede mortvader Nybegynder
09. december 2008 - 11:55 #2
Sørg for at formattere datoen: 2008-12-24, altså år-måned-dag. Så skulle det altid virke.
Avatar billede fcdong Nybegynder
09. december 2008 - 18:07 #3
Hvor skal jeg gøre det. Snakker vi om databasen, eller er det oppe i koden:
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(Request.Form("Dato"), Request.Form("Dato"), null)) ' adDBTimeStamp

:-)
Avatar billede mortvader Nybegynder
09. december 2008 - 18:51 #4
Jeg ville gøre det i koden, f.eks. vha. en function:

function mydate(adate)
  mydate=datepart("yyyy",adate)&"-"&datepart("m",adate)&"-"&datepart("d",adate)
end function
Avatar billede fcdong Nybegynder
09. december 2008 - 18:57 #5
Har du mulighed for at vise mig hvordan du vil sætte din kode sammen med min update kode :-)
Avatar billede mortvader Nybegynder
09. december 2008 - 20:03 #6
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(mydate(Request.Form("Dato")), mydate(Request.Form("Dato")), null))

-her antager jeg selvfølgelig at request.form("dato") kommer med en datoværdi.
Avatar billede fcdong Nybegynder
09. december 2008 - 20:16 #7
Hvor mydate ind henne?
Den kommer frem med denne fejl
-----------------
Microsoft VBScript runtime error '800a000d'

Type mismatch: 'mydate'

/modul/nyheder_oversigt.asp, line 55
---------------------------
linje 55 er den nye linje
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(mydate(Request.Form("Dato")), mydate(Request.Form("Dato")), null))
Avatar billede mortvader Nybegynder
09. december 2008 - 20:21 #8
Ja du skal lige putte den function ind et sted. Bare paste den ind i bunden, for eksempel.
Avatar billede fcdong Nybegynder
09. december 2008 - 20:24 #9
kan godt se at mydate er = med denne kode
---------------
function mydate(adate)
  mydate=datepart("yyyy",adate)&"-"&datepart("m",adate)&"-"&datepart("d",adate)
end function
-----------------------
Men den skal vel ind tidligere oppe i koden, men hvor får jeg den ind uden at den blander sig i noget af det andet.
Avatar billede mortvader Nybegynder
09. december 2008 - 20:44 #10
Du kan som sagt paste den ind i bunden af scriptet. Det vil ikke "blande" sig i resten af koden.
Avatar billede fcdong Nybegynder
09. december 2008 - 20:49 #11
Jeg har forsøgt at ligge det ind flere steder nu, men den ændre stadigvæk i datoen
-----------------------
<%
If (CStr(Request("MM_update")) = "form1") Then
  If (Not MM_abortEdit) Then
    ' execute the update
   
    Dim MM_editCmd

    Set MM_editCmd = Server.CreateObject ("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_ConnOuresport1_STRING
    MM_editCmd.CommandText = "UPDATE nyhed SET Overskrift = ?, Dato = ?, brodtekst = ?, nyhedforsiden = ?, billedetekst1 = ?, visnyhed = ?, Visnyhedforside = ?, Starte = ?, slut = ? WHERE NyhedID = ?"
   
    MM_editCmd.Prepared = true
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 203, 1, 536870910, Request.Form("Overskrift")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(mydate(Request.Form("Dato")), mydate(Request.Form("Dato")), null))
    'MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 135, 1, -1, MM_IIF(Request.Form("Dato"), Request.Form("Dato"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 203, 1, 536870910, Request.Form("brodtekst")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param4", 203, 1, 536870910, Request.Form("nyhederforsiden")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param5", 203, 1, 536870910, Request.Form("billedetekst1")) ' adLongVarWChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param6", 5, 1, -1, MM_IIF(Request.Form("visnyhed"), 1, 0)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param7", 5, 1, -1, MM_IIF(Request.Form("visnyhedforside"), 1, 0)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param8", 135, 1, -1, MM_IIF(Request.Form("Starte"), Request.Form("Starte"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param9", 135, 1, -1, MM_IIF(Request.Form("slut"), Request.Form("slut"), null)) ' adDBTimeStamp
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param10", 5, 1, -1, MM_IIF(Request.Form("MM_recordId"), Request.Form("MM_recordId"), null)) ' adDouble
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close
function mydate(adate)
  mydate=datepart("yyyy",adate)&"-"&datepart("m",adate)&"-"&datepart("d",adate)
end function
    ' append the query string to the redirect URL
    Dim MM_editRedirectUrl
    MM_editRedirectUrl = "nyheder_oversigt.asp"
    If (Request.QueryString <> "") Then
      If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
        MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
      Else
        MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
      End If
    End If
    Response.Redirect(MM_editRedirectUrl)
  End If
End If
%>
---------------------------------------
Avatar billede mortvader Nybegynder
09. december 2008 - 21:07 #12
Er du sikker?
Prøv lige at lave en

response.write MM_editCmd.CommandText
-i stedet for at execute. Hvordan ser den ud?
Avatar billede fcdong Nybegynder
09. december 2008 - 21:15 #13
Nu kan jeg ikke updatere siden. Der sker slet ingen ændringer når jeg updatere :-)

Er det godt nok det sted jeg har lagt den ind?
Avatar billede mortvader Nybegynder
09. december 2008 - 21:18 #14
Jeg ville som sagt sætte den ind i bunden. Men i princippet burde det ikke være noget problem. Vil jeg tro..
Avatar billede fcdong Nybegynder
09. december 2008 - 21:20 #15
Når du skriver bunden, snakker vi så i bunden af update scripte og inden body tag?
Avatar billede fcdong Nybegynder
09. december 2008 - 21:29 #16
Hmmm jeg er godt nok ved at være træt af dette datofelt :-)
Det er meget underligt at den ændre på dd-md
Avatar billede fcdong Nybegynder
09. december 2008 - 22:15 #17
Jeg håber du kan hjælpe mig med en løsning hvis du altså har til til det. Det er virkelig et problem jeg har brugt meget tid på :-)
Avatar billede fcdong Nybegynder
11. december 2008 - 21:08 #18
Jeg mangler stadigvæk hjælp til dette problem.
Jeg har set denne kode som der er flere der har omtalt
<%
dato = "04-06-2003"
strDato = Year(dato) & "-" & Month(dato) & "-" & Day(dato)
SQL = "INSERT INTO tablenavn (dato) VALUES (#" & strDato & "#)"
%>
hvordan får jeg den passet sammen med min kode fra dreamweaver, indtil nu er det ikke lykkes mig at få det til at virke efter hensigten.
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