Om man har en "Töm varukorgen"-knapp" och användaren trycker på den. Hur skriver man ASP-kod som tar bort samtliga cookies?
Jag använder mig av en tvådimensionell cookie.
Ta bort cookies
23 svar · 674 visningar · startad av danielpetersson
Nix
Visa lite kod tack. Kontrollera att du sätter "expires" på kakan och inte på en nyckel i kakan.
Ungefär så här ser koden ut.
If mode = "clear" Then
'Håller räkningen på hur mång olika slags varor
for i=1 to Session("antal")
Response.Cookies(Cstr(i)).Expires = DateAdd("d", -1000, Date)
next
End if
<HTML>
<HEAD>
<FORM method="post" action="varukorg.asp" target="resultat" name="formVarukorg">
<INPUT type="hidden" name="mode" value="clear">
<INPUT type="button" name="rensaVarukorg" value=" Töm varukorgen ">
</HEAD>
</HTML>
Igen som vet?
Denna raden fungerar inte för att ta bort samtliga cookies:
Response.Cookies(Cstr(i)).Expires = DateAdd("d", -1000, Date)
Någon som har någon idé? Se kod ovan.
Vad menar du egentligen med "samtliga cookies"?
Dina cookies har väl namn också? Tror nog att du måste ta med det när du ska ta bort dom.
Response.Cookies(Cstr(i))("aBenam").Expires = DateAdd("d", -1000, Date)
alt kanske att det även fungerar med:
Response.Cookies("aBenam").Expires = DateAdd("d", -1000, Date)
Fattar ta mig fanken inte det.
Ingen av dina förslag funka. Jag tror jag har försökt med alla alternativ, utom (förstås) det som e riktigt.
Har tre cookies. Namnen på cookies är en siffra beroende på hur många olika sorters varor som lagts till i varukorgen. Nycklarna för de tre kakarna är: artNr, aBenam, antalArtiklar.
Ex)
dim i
i= 1
Response.Cookies(CStr(i))("artNr") = "162653"
Response.Cookies(CStr(i))("aBenam") = "strumpor"
Response.Cookies(CStr(i))("antalArtiklar") = 2
[red]
<%
For Each objItem in Request.Cookies
If Request.Cookies(objItem).HasKeys Then
Response.Cookies(objItem).Expires = DateAdd("d", -1000, Date)
End If
Next
<%
[/red]
Chansning ;)
Det konstiga är att jag kan ta bort alla kakorna genom att skriva så som du skrev i den filen, artikelinfo.asp, som skapar kakorna. Men det går inte att ta bort kakorna i varukorg.asp med samma kod.
Väldigt, väldigt konstigt. Har någon nån bra föklaring till varför detta inte funkar i varukorg.asp?
[red]
<HTML>
<HEAD>
<FORM method="post" action="varukorg.asp" target="resultat" name="formVarukorg">
<INPUT type="hidden" name="mode" value="clear">
<INPUT type="button" name="rensaVarukorg" value=" Töm varukorgen ">
[b]</FORM>[/b]
</HEAD>
</HTML>
[/red]
........det ärdet ända jag kan se.........men det borde väl inte vara det
<INPUT type="button" name="rensaVarukorg" value=" Töm varukorgen ">
Vad utför ett knapptryck? Ingenting vad jag kan se. Byt typ till submit.
Mvh,
Jag har redan testat med submit oxå och får inte det heller att fungera. Detta är högst märkligt
Visa ALL kod som har med det hela att göra på den sidan, så attans ska det väl lösas!
Här är hela varukorgen.asp:
<%
If tillstand = "clear" Then
For Each objItem in Request.Cookies
If Request.Cookies(objItem).HasKeys Then
Response.Cookie (objItem).Expires = DateAdd("d", -1000, Date)
End If
Next
End if
%>
<HTML>
<HEAD>
<TITLE></TITLE>
<SCRIPT language="javascript">
<!--
function bestall()
{
alert("Denna tjänsten är inte aktiv!");
}
-->
</SCRIPT>
</HEAD>
<BODY BACKGROUND="back.gif" BGPROPERTIES="fixed">
<CENTER>
<B>DETTA FINNS I VARUKORGEN</B>
</CENTER>
<BR><BR>
<TABLE align="center" border width="70%" cellspacing="0" cellpadding="3" class="table">
<%
Response.Write "<TR>"
Response.Write "<TH>Artikelnamn</TH>"
Response.Write "<TH>Artikelnr</TH>"
Response.Write "<TH>Antal</TH>"
Response.Write "</TR>"
for i=1 to Session("antal")
Response.Write "<TR>"
Response.Write "<TD>" & Request.Cookies(Cstr(i))("aBenam") & "</TD>"
Response.Write "<TD>" & Request.Cookies(Cstr(i))("artNr") & "</TD>"
Response.Write "<TD>" & Request.Cookies(Cstr(i))("antalArtiklar") & "</TD>"
Response.Write "</TR>"
Next
%>
</TABLE>
<BR>
<BR>
<CENTER>
<FORM method="post" action="varukorg.asp" target="resultat" name="formVarukorg">
<INPUT type="hidden" name="tilstand" value="clear">
<INPUT type="submit" name="rensaVarukorg" value=" Töm varukorgen " onClick="snart()">
<INPUT type="button" name="bestalla" value=" Skicka beställning " onClick="bestall()">
</FORM>
</CENTER>
<BR>
<HR>
<BR>
<INPUT type="button" onClick="history.back();" name="backa" value="<< Bakåt">
</BODY>
</HTML>
[red]
If Request.form("rensaVarukorg") = " Töm varukorgen " then
For Each objItem in Request.Cookies
If Request.Cookies(objItem).HasKeys Then
Response.Cookie (objItem).Expires = DateAdd("d", -1000, Date)
End If
Next
End if
[/red]
kanske
tillstand = Request.form("tillstand")
If tillstand = "clear" Then
For Each objItem in Request.Cookies
If Request.Cookies(objItem).HasKeys Then
Response.Cookie (objItem).Expires = DateAdd("d", -1000, Date)
End If
Next
End if

