---
title: "får det lov att vara en kaka?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/78458-får-det-lov-att-vara-en-kaka"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "magnusfeldth"
published: "2003-05-30T10:48:26.000Z"
updated: "2003-06-02T16:52:44.000Z"
replies: 13
views: 311
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/78458-får-det-lov-att-vara-en-kaka"
---

# får det lov att vara en kaka?

## #1 — magnusfeldth, 2003-05-30T10:48Z

Två frågor om cookies:

1, Eftersom jag har en massa olika artiklar och jag tänkte ha ett röstningsförfarande på dem vill jag lägga in en cookie för varje artikel. Kan jag göra så att cookienamnet styrs av artikelns ID-nummer? Hur i såfall?

2, Kan man göra så att utgångsdatumet på cookien alltid är dagen efter? (det borde man kunna) Hur, i så fall?

Permalänk: https://www.webforum.nu/p/78458

## #2 — @nders, 2003-05-30T10:51Z

1) man ska undvika att ha nycklar som har namn som bara är tal, men att ha en nyckel som heter R23 är helt ok. **Response.Cookies("rostning")("R" & intArticleID) = "1"**

2) Ja, använd dateAdd() när du sätter giltighetstiden på kakan.

Permalänk: https://www.webforum.nu/p/1067519

## #3 — magnusfeldth, 2003-05-30T10:55Z

på svar 2), kan du beskriva lite bättre med tanke på att jag fortfarande är en komplett idiot (okej, kanske inte men nästan)

Permalänk: https://www.webforum.nu/p/1067525

## #4 — Erik Juhlin, 2003-05-30T10:56Z

```
Response.Cookies("foo").Expires = DataAdd("d", Date, 1)
```

Borde funka. :)

Permalänk: https://www.webforum.nu/p/1067528

## #5 — @nders, 2003-05-30T10:58Z

[Här](http://msdn.microsoft.com/library/en-us/script56/html/vsfctdateadd.asp) kan man läsa om användandet av DateAdd().

Permalänk: https://www.webforum.nu/p/1067531

## #6 — magnusfeldth, 2003-05-30T10:58Z

behöver jag skriva något innan det eller räcker det så? 

på fråga 1) hur skickar jag med id-numret?

Permalänk: https://www.webforum.nu/p/1067533

## #7 — magnusfeldth, 2003-06-02T15:12Z

prövade lite: 
felmess:

```
Microsoft VBScript runtime error '800a000d' 

Type mismatch: 'DataAdd' 

/rekom.asp, line 16
```

koden

```
<% 
Response.Buffer = True 
   
Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("addemalmbergadmin/tubsockan.mdb")&";"

SQL = "SELECT * FROM sockrates WHERE id = " & Request.Form("id") & " "
Set RecSet = Conn.Execute(SQL)

page = "sidval.asp?ID="& Request.Form("id")&"&do=voted"

Response.Cookies("sockvote")("artikel"& Request.Form("id")) = voted
Response.Cookies("sockvote").Expires = DataAdd("d", Date, 1)    <--- rad 16

RecSet.Close
Set RecSet = Nothing

SQL = "UPDATE sockrates SET rekomvotes = rekomvotes + 1, rekom = rekom + '" & Request.Form("rekom1") & "' WHERE id = " & Request.Form("id")
Conn.Execute SQL

Conn.Close 
Set Conn=Nothing 

Response.Redirect page
%>
```

vad är det för fel? och kan jag skriva ID på det sättet som jag gör i cookien?

Permalänk: https://www.webforum.nu/p/1072401

## #8 — KoTTeN, 2003-06-02T15:24Z

@nders varför ska man undvika att bara ha siffror i en kaka?

Permalänk: https://www.webforum.nu/p/1072405

## #9 — Sebbe, 2003-06-02T15:27Z

Lite fel syntax på DateAdd bara. :)

```
Response.Cookies("sockvote").Expires = DateAdd("d", 1, Date)
```

Permalänk: https://www.webforum.nu/p/1072406

## #10 — @nders, 2003-06-02T15:37Z

> **KoTTeN skrev:**
>
> @nders varför ska man undvika att bara ha siffror i en kaka?

Därför att det är som att be om problem. Att skriva så här:

```
intMittID = 5
strNågot = Request.Cookies("minkaka")(intMittID)
```

innebär att man inte alls frågar efter värdet vars nyckel är 5, utan cookievärdet med index 5, dvs det sjätte värdet i kakan. Av samma anledning bör man inte ha kolumner i tabeller i en databas som heter bara en siffra. Det är bäddat för missförstånd.

Det *går* dock, om man nu skulle vilja det, varför man nu skulle vilja det.

Det heter dessutom Dat**e**Add(), inget annat.

Mvh

Permalänk: https://www.webforum.nu/p/1072409

## #11 — Sebbe, 2003-06-02T16:06Z

> **@nders skrev:**
>
> Det heter dessutom Dat**e**Add(), inget annat.

Jo, det också! :) Redigerat!

Permalänk: https://www.webforum.nu/p/1072424

## #12 — magnusfeldth, 2003-06-02T16:11Z

har dock fortfarande ett problem:
denna if-satsen har jag skrivit:

```
<% IF Request.Cookies("sockvote")("opinion") = "voted" then %>Du har röstat!<% end if %>
```

men den visar inte nånting när man röstat! grrr

cookiekod

```
Response.Cookies("sockvote")("opinion") = voted
Response.Cookies("sockvote").Expires = DateAdd("d", 1, Date)
```

jag har samma problem på artikelcookien, kod:

```
Response.Cookies("sockvote")("artikel"& Request.Form("id")) = voted
Response.Cookies("sockvote").Expires = DateAdd("d", 1, Date)
```

och kod:

```
<% IF Request.Cookies("sockvote")("artikel"& Request.("id")) = "voted" then %>Du har röstat!<% end if %>
```

vad har jag klantat till nu då?

Permalänk: https://www.webforum.nu/p/1072426

## #13 — Sebbe, 2003-06-02T16:22Z

Om du inte lägger till citationstecken är det en variabel's värde du lägger till.

```
Response.Cookies("sockvote")("opinion") = "voted"
Response.Cookies("sockvote")("artikel" & Request.Form("id")) = "voted"
```

Permalänk: https://www.webforum.nu/p/1072431

## #14 — KoTTeN, 2003-06-02T16:52Z

ok, tack @nders, då vet jag.

Permalänk: https://www.webforum.nu/p/1072448

---

Tråden på webben: https://www.webforum.nu/amne/asp/78458-får-det-lov-att-vara-en-kaka
