Jeg skal bruge det til at databaseopdateringen lidt nemmere at arbejde med så man ikke hver gang manuelt skal sidde og lave sql updaten manuelt :) , nok bare mig der har stirret mig blind på det :)
tmpArr = split(Request.Form(),"&") for each tmp in tmpArr tmpArr2 = split(tmp,"=") Response.write tmpArr2(0) &"='"& tmpArr2(1) & "'<br>" next
Det næste problem er, at du ikke ved hvad der er text/dato/tal, så du ved ikke om der skal være ', # eller intet omkring værdien. Du burde dog kunne finde ud af det med forskellige test (isnumeric(), isDate())
tmpArr = split(Request.Form(),"&") for each tmp in tmpArr tmpArr2 = split(tmp,"=") strSQLQuery = "update rabat set " & tmpArr2(0) & " = '" & tmpArr2(1) & "'" response.write strSQLQuery 'Response.write tmpArr2(0) &"='"& tmpArr2(1) & "'<br><br>" next Set rs = Server.CreateObject("ADODB.Recordset") rs.Open strSQLQuery, conn, 3, 3 conn.close set conn = Nothing
Måske jeg lige skulle lave sql updaten lidt mere hensigtsmæssig. Nogen ide til dette ?, har snørklet lidt med det også forsøgt med rs.update men får en ADODB.Recordset error '800a0cc1'
Item cannot be found in the collection corresponding to the requested name or ordinal.
tmpArr = split(Request.Form(),"&") sql= "" for each tmp in tmpArr tmpArr2 = split(tmp,"=") if sql = "" then sql = tmpArr2(0) &"='"& tmpArr2(1) & "'" else sql = sql & "," & tmpArr2(0) &"='"& tmpArr2(1) & "'" end if next sql = "update rabat set "& sql &" where id=123"
Men der mangles en betingelse til where delen af sql-sætningen.
Kanon, tak, nu virker det, lavede det lidt om, lyder som følger:
Set rs = Server.CreateObject("ADODB.Recordset") opdater = "SELECT * FROM rabat WHERE ID = 1" RS.Open opdater, Conn, 3, 3 tmpArr = split(Request.Form(),"&") for each tmp in tmpArr tmpArr2 = split(tmp,"=") RS (tmpArr2(0)) = tmpArr2(1) RS.Update next RS.Close Conn.Close
Virker mærkelig. Jeg ved at med get/querystring() metoden udskifter den mellemrum med +, da mellemrum ikke er gyldig i en url, men det bliver automatisk skiftet tilbage igen når man henter med querystring(). Har aldrig hørt om at den gør det ved post/form() metoden....
Ja, det er lidt sort. Har bemærket at æ ø og å bliver konverteret til f.eks: %F8. Kan man gøre noget ved dette, kan godt smide et nyt spørgsmål såfremt :)
Jeps , tak. Problemet er blot at ved indtastning af mellemrum i formularen bliver disse indsat som + i databasen, dette gælder også ved æ ø og å. Disse bliver dog konveretet til nogle andre tegn, som om den ikke forstå dansk tegnsæt, har prøvet at benytte:
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.