Avatar billede oasen Nybegynder
24. april 2002 - 03:52 Der er 5 kommentarer og
2 løsninger

Besøgstæller bliver pludselig lidt for glad!

Jeg har lavet mig denne simple besøgstæller, der skriver til en txt-fil.
Den sikrer en "ren" statestik, idet den ikke tæller mine egne besøg (fra anførte IP). Fungerer glimrende, men pludselig efter jeg havde ændret to filer, lægger den 40 til besøgstallet. Og i det tidsrum havde der kun været ca. 3. Er der noget galt med den???

set fs = createobject("scripting.filesystemobject")
    set file = fs.opentextfile(("d:/celinedion.dk/cgi-bin/taeller.dat"))
    visitorcount = cint(file.readline)
' Registrer kun indlægget hvis besøget ikke foregår fra denne computer
    if session("visitorcount") = "" And Request.ServerVariables("REMOTE_ADDR") <> "217.157.169.226" Then
        session("visitorcount") = visitorcount
        visitorcount = visitorcount + 1
        file.close
        set file = fs.createtextfile(("d:/celinedion.dk/cgi-bin/taeller.dat"),true)
        file.writeline(visitorcount)
    end if
    file.close
    set fs = nothing
Avatar billede eagleeye Praktikant
24. april 2002 - 08:40 #1
hvis en bruger ikke har slået session-cookies til i sin browser så tæller den op hver gang siden loades da man så ikke kan ligge noget i Session.
Altså session("visitorcount") = visitorcount bliber til:
session("visitorcount") = ""
Avatar billede oasen Nybegynder
24. april 2002 - 15:52 #2
Ok, men hvor mange brugere har ikke det? Er der en bedre måde at gøre det på?
Avatar billede oasen Nybegynder
24. april 2002 - 16:20 #3
Hvordan kan jeg tjekke om brugeren har slået session-cookies til i browseren? For så skal den jo ikke tælle besøget på normal vis..
Avatar billede oasen Nybegynder
24. april 2002 - 19:35 #4
Jeg synes bare det lyder usandsynligt, at den lige pludselig lægger 40 til besøgstallet på 1 min. Så skal brugeren have requestet 40 filer i dette tidsrum?!
Avatar billede eagleeye Praktikant
24. april 2002 - 19:46 #5
tja hvis man trykker på reload og du har dit script på alle sider?
Så bliver det hurtigt til nogle stykker på kort tid.

Jeg har lige i min browser prøvet at slå over til prompt for session-cookies. På hver af dine sider (jeg var på) kommer en pop-up og spurgte om den måtte gemme en session variable.
Så det har alderrede givet 5-6 hits ekstra. Jeg prøvede så at acceptere den cookien som den spurgte om på siden og så holdt den op med at spørge på de andre...... Derfor gætter jeg på at det er din counter session-cookie.

Når ja jeg regner med at du har siden www.celinedion.dk
Avatar billede oasen Nybegynder
26. april 2002 - 01:42 #6
Ja, blandt andet :) Jeg har tilføjet tælleren til samtlige sider, så det kan hurtigt summe sig - det har du nok ret i. Tak for testen! Hvor slår man i øvrigt session-cookies fra/til, jeg har aldrig ændret det, og default er jo sat til Accepter (?)
Avatar billede eagleeye Praktikant
26. april 2002 - 12:56 #7
Man kan i IE 5.0 under Tools -> Internet Option -> Sikkerhed . I boksen Sikkerhed for Zone, tryk på Custom level.
Scroll ned til Cookies, det er to spørgsmål omkring cookies:

Allow cookies stored on your computer? () Disable, ()Prompt, ()Enable.
og
Allow per-session cookies? () Disable, ()Prompt, ()Enable.  <---det er den

disable slår helt fra, enable slår til og promt giver en Box som spørger om man vil tillade en cookie.


Jeg kom til at kikke ude på arbjede hvor vi har IE5.5 eller IE6 der kunne jeg ikke finde den opsætnigs mulighed, under sikkerhed.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester