---
title: "korrekt räknare?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/78978-korrekt-räknare"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "eriks"
published: "2003-06-05T18:25:09.000Z"
updated: "2003-06-08T14:18:12.000Z"
replies: 13
views: 382
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/78978-korrekt-räknare"
---

# korrekt räknare?

## #1 — eriks, 2003-06-05T18:25Z

Hej! Jag har gjort en räknare som räknar unika besökare och loggar var de kommer ifrån (i varje fall tror jag att jag har gjort det). Jag misstänker emellertid att den inte registrerar alla användare, och eftersom jag inte är så het på cookies funderar jag på om det kan finnas något fel i koden. Så här ser koden ut:

```
If Request.Cookies("counter") = "1" Then
'ingenting
else

Response.Cookies("counter") = "1"
Response.Cookies("counter").Expires = DateAdd("d",1,Now())

strSQL = "UPDATE Besokare Set Unika= Unika + 1 WHERE ID=1"
Connection.Execute(strSQL)

strIp = Request.ServerVariables("REMOTE_HOST")
strKlient = Request.ServerVariables("HTTP_USER_AGENT")
dtmDatum = Now
strReferer = Request.ServerVariables("HTTP_REFERER")

SQL = "INSERT INTO Logg (Datum, Ip, Klient, Referer)" &_
" VALUES (#" & dtmDatum & "#, '" & strIp & "', '" & strKlient & "', '" & strReferer & "')"
Connection.Execute(SQL)

Connection.Close
Set Connection = Nothing

End if
```

Är koden rätt?

Tack! /Erik

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

## #2 — @nders, 2003-06-05T18:27Z

Jag tycker det ser funkis ut. Men, ska kakan verkligen försvinna efter ett dygn?

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

## #3 — greyhound, 2003-06-05T18:36Z

Lita inte på cookies, nya browsers blockar väl som standard cookies nu eller?

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

## #4 — eriks, 2003-06-06T01:46Z

Jag vill räkna unika besökare, därför försvinner kakan efter ett dygn.... Är det inte så man gör?

Vaddå blockar cookies??

MVH Erik

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

## #5 — @nders, 2003-06-06T03:54Z

> **eriks skrev:**
>
> Jag vill räkna unika besökare, därför försvinner kakan efter ett dygn.... Är det inte så man gör?

Nej. Däremot gör man så om man vill räkna unika besökare per dag. Det framgick inte. Du verkar ju inte ha något datumvillkor i SQL-frågan där du uppdaterar besöksantalet?

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

## #6 — greyhound, 2003-06-06T04:33Z

> **eriks skrev:**
>
> Vaddå blockar cookies??

Alltså dom tar inte imot cookies vilket gör att din räknare skulle räkna samma person flera gånger. Att göra en bra räknare är lite svårt, men sessioner utan cookies är nog det bästa.

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

## #7 — m_soderlund, 2003-06-06T07:33Z

..och för att göra det extra säkert kan man ju sätta en cookie på användarens dator, plus kolla användarens IP-nummer också. ;)

Att de nutida webbläsarna blockar cookies som standard är väl bara båg - man kan däremot ställa in sin webbläsare så att den blockar alla cookies. :D

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

## #8 — eriks, 2003-06-07T16:13Z

Okey... Hur räknar man unika besökare på en enkelt vis då?

Kan man inte logga dem som inte tar emot cookies? Typ att man gör en if-sats om webläsaren tar emot cookies??

Jag kom på nu att i min lista visas ibland samma ip-nummer efter varandra mer än en gång, och det borde de ju inte kunna om räknaren hade fungerat som jag vill... Alltså måste de användarna inte ha cookies eller är det något fel i koden...

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

## #9 — SteveP, 2003-06-07T16:23Z

Om den visar samma ip-nummer efter varandra så är ju din IF sats fel? Du borde ju enbart lägga till personens ip-nummer om den inte redan finns i databasen?

nåt i stil med

```
Ipnr = request.servervariables("remote_addr")
SqlCheck = "Select * from CounterUnika where Hosts ='" & Ipnr & "'"
Set RsCheck = Connect.execute(SqlCheck)

If RsCheck.eof then
Finns_Redan="Nej"
End If
RsCheck.Close

If Finns_Redan="Nej" then

SqlUnik = "Insert Into CounterUnika (Hosts) Values('" & Ipnr & "')"
Connect.execute SqlUnik
End If
```

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

## #10 — eriks, 2003-06-07T16:52Z

Okey... men för att detta inte ska bli en alltför långsam process bör man väl tömma fältet i databasen varje dag... Kan man göra ett tidsbaserat script som tömmer tabellen t.ex. kl 23:59?

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

## #11 — SteveP, 2003-06-07T16:59Z

Vad har du för DBMS?

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

## #12 — eriks, 2003-06-07T20:33Z

Vad är det?

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

## #13 — SteveP, 2003-06-07T20:36Z

Alltså vilken Databas du använder dig av.
Access, Ms SQL, Mysql etc?

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

## #14 — eriks, 2003-06-08T14:18Z

access

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/78978-korrekt-räknare
