Varje gång jag försöker att lägga till en produkt i min kundvagn får jag följande felmeddelande:
Cookies-objekt, ASP 0102 (0x80004005)
Funktionen förväntar sig en sträng som inmatning.
/test/mystore/kundvagn.asp, line 58
Skulle det fungera(så att produkterna visas, skapar dock andra problem)så visas produkten fyra gånger!
Det räcker ju med en...
Någon som kan hjälpa?!
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("shop.mdb")
%>
<html>
<head>
<title>Black</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body class="orange">
<%
If Request.Form("PID") <> "" Then
PID = Trim(Request.Form("PID"))
Set rs = Connection.Execute("SELECT PID, namn, pris FROM produkter WHERE PID = " & PID & "")
Response. Cookies(PID)("PID") = rs("PID")
Response. Cookies(PID)("namn") = rs("namn")
Response. Cookies(PID)("pris") = rs("pris")
Response. Cookies(PID)("antal") = trim(Request.Form("antal"))
%>
<table>
<tr>
<td>
<table>
<tr>
<td>
<table align="left" width="650" cellspacing="0" cellpadding="2" border="0">
<tr>
<th width="340">
Produkt:
</th>
<th width="45">
Antal:
</th>
<th width="115">
Pris(inkl. moms):
</th>
<th width="110">
Ta bort produkt
</th>
</tr>
<%
For each objitem in Response. Cookies(item)[/red]
If Response. Cookies(item).Haskeys Then
PID = Request. Cookies(item)("PID")
namn = Request. Cookies(item)("namn")
pris = Request. Cookies(item)("pris")
antal = Request. Cookies(item)("antal")
color = color +1
bgcolor = "#FFFFFF"
If color mod 2 = 0 Then
bgcolor = "#FFEEBB"
End If
%>
<tr bgcolor="<%=bgcolor%>">
<td>
<a href="prodinfo.asp?PID=<%=PID%>" title="Klicka här för mer information om <%=namn%>" target="main"><%=namn%></a>
</td>
<td>
<%=antal%>
</td>
<td>
<%=pris%>:-
</td>
<td>
<a href="kundvagn.asp?page=del&PID=<%=PID%>" title="Ta bort <%=namn%> ur kundvagnen.">Ta bort</a>
</td>
</tr>
<%
End If
Next
%>
</table>
</td>
</tr>
<tr>
<td>
<br>
<table>
<tr>
<td>
<%
Dim antalprod
antalprod = 0
For Each objitem in Response. Cookies(item)
antal = Request. Cookies(item)("antal")
antalprod = antalprod + antal
Next
Response.Write"Totalt antal produkter: <b>" & antalprod & "</b><br>"
Dim summa
summa = 0
For Each objitem in Response. Cookies(item)
pris = Request. Cookies(item)("pris")
summa = summa + pris
Next
Response.Write"Total kostnad(inkl.moms): <b>"& pris &":-</b>"
%>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td valign="top">
<a href="kassa.asp" title="Klicka här för att komma till kassan."><strong>Till kassan</strong></a>
</td>
</tr>
</table>
<%
rs.Close
Set rs = Nothing
Else
Response.Write"Din kundvagn är tom!"
End If
%>
</body>
</html>
<%
Connection.Close
Set Connection = Nothing
%>
Rad 58 år blå.
/Mika3l
------------------
Det stora datatestet:
Ok, då börjar vi!
För att börja testet tryck alt+F4.
Har provat med att byta ut i bara for each och alla (item).
När jag bytte i bara for each så fick jag samma felmeddelande.
När jag bytte ut alla (item) så fick jag felmeddelandet
Körningsfel i Microsoft VBScript (0x800A01C3)
Objektet måste vara en mängd.
/test/mystore/kundvagn.asp, line 58
For each objitem in Request. Cookies.item
/Mika3l
------------------
Det stora datatestet:
Ok, då börjar vi!
För att börja testet tryck alt+F4.
For each objitem in Response. Cookies(item)("pris")
eller vilken cookie du vill loopa igenom, annars kör du ju bara loopen så pass många gånger som det finns olika cookies.
...tror jag... ;)
------------------ /solbulle Hemmabio | Spelautomater | The Who | The Who II
Jag är inte den bästa på detta, i morgon lär du nog kunna få bättre svar.
Tror nog att du är på rätt väg, men att du hamnar fel i loopen.
Vad händer om du bara helt enkelt byter ut i dina loopar:
For each objitem in Response. Cookies(item)
mot
For each objitem in Response. Cookies(item)("pris")
?
(Eller till någon av de andra cookisarna, antal el vad dom nu heter.
<%
For each item in Response. Cookies
If Response. Cookies(item).Haskeys Then
PID = Request. Cookies(item)("PID")
namn = Request. Cookies(item)("namn")
pris = Request. Cookies(item)("pris")
antal = Request. Cookies(item)("antal")
color = color +1
bgcolor = "#FFFFFF"
If color mod 2 = 0 Then
bgcolor = "#FFEEBB"
End If
%>
<tr bgcolor="<%=bgcolor%>">
<td>
<a href="prodinfo.asp?PID=<%=PID%>" title="Klicka här för mer information om <%=namn%>" target="main"><%=namn%></a>
</td>
<td>
<%=antal%>
</td>
<td>
<%=pris%>:-
</td>
<td>
<a href="kundvagn.asp?page=del&PID=<%=PID%>" title="Ta bort <%=namn%> ur kundvagnen.">Ta bort</a>
</td>
</tr>
<%
End If
Next
%>
</table>
</td>
</tr>
<tr>
<td>
<br>
<table>
<tr>
<td>
<%
Dim antalprod
antalprod = 0
For Each item in Response. Cookies
If Response. Cookies(item).Haskeys Then
antal = Request. Cookies(item)("antal")
antalprod = antalprod + antal
end if
next
Response.Write"Totalt antal produkter: <b>" & antalprod & "</b><br>"
Dim summa
summa = 0
For Each item in Response. Cookies
If Response. Cookies(item).Haskeys Then
pris = Request. Cookies(item)("pris")
summa = summa + pris
end if
Next
Response.Write"Total kostnad(inkl.moms): <b>"& pris &":-</b>"
%>
263 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2