För att "strOrderID" inte alltid innehåller "_"?
Varför funkar inte denna koden?
varMyArray = Split(strOrderID, "_")
strValue1 = varMyArray(0)
strValue2 = varMyArray(1)
21 svar · 524 visningar · startad av Inferis
Varför funkar inte denna koden?
varMyArray = Split(strOrderID, "_")
strValue1 = varMyArray(0)
strValue2 = varMyArray(1)
För att "strOrderID" inte alltid innehåller "_"?
har du ngn text runt _ då?
Det är ju inget fel på koden du bifogade i alle fall!
Jodå, det gör den...
posta mera kod!
Ett formulär som skickar data ser ut så här:
(Det har alltid två värden)
<input type="hidden" name="order_id" value="<%=rs("order")%>_<%=request.form("id")%>">
Kolla källan på HTMLkoden och se så att det verkligen finns värden för de två variablerna.
Skriver jag ut strängen utan split så får jag värde1_värde2.
Koden som tar emot datan:
Dim conn, MdbFilePath, SQL, strOrderID, strDatum, varMyArray, strValue1, strValue2
strOrderID = Request.Form("order_id")
varMyArray = Split(strOrderID, "_")
strValue1 = varMyArray(0)
strValue2 = varMyArray(1)
strDatum = "" & now()
Set conn = Server.CreateObject("ADODB.Connection")
MdbFilePath = Server.MapPath("../data/dbX.mdb")
conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
SQL = "Update T_Users Set Date_order = #"& strDatum &"#, B = '" & strValue2 & "' WHERE U = '" & strValue1 & "'"
Conn.Execute(SQL)
om du trimmar då?
strOrderID = trim(Request.Form("order_id"))
Trim funkade inte heller. :-(
Varför sätta ihop en sträng för att sen bryta isär den? Kan du inte skicka två variabler?
Kan bara skicka en variabel. Därför vill jag prova att lösa det så här.
Ge ett exempel på hur "strOrderID" ser ut då du får felet.
Jag får värdet "abc_123"
B = '" & strValue2 & "' WHERE U = '" & strValue1 & "'"
Jag vill ha in värdet "123" i B och värdet "abc" i U.
Du kan inte få felaktigt matrisindex med koden ovan om strOrderID="abc_123".
Jag har testad din kod (utan inserten) och det funkar ju!
Solbulle:
Det är en s.k betalningsbekräftelse. Den kommer från Paynova.
Jag håller på att testa deras betalsystem.
Koden funkar fortfarande inte.