Jens Gyldenkærne Clausen wrote:
>> ingen optælling ved genindlæsning af side
>> ingen optælling ved sideskift på sitet
>> ingen optælling ved genbesøg inden for eks. 20 minutter?
>
> Alle de nævnte ting kan klares ved hjælp af session.
Netop min tanke, men jeg kunne ikke få det formuleret i scriptet, så det
fungerer.
>
> Du kan ændre scriptet ved at tilføje et tjek før tællerkoden køres:
>
> If Not session("isCounted") Then
> ' Kør tællerkode
>
> ' Sæt session-variabel
> session("isCounted") = True
> End If
Det vil jeg forsøge at få lagt ind.
> Hvis tællerkoden giver problemer ved samtidige brugere, kan du prøve
> at sætte Application.Lock ... Application.Unlock uden om
> filoperationen. Det skulle sikre at kun én bruger får adgang til at
> åbne/læse/skrive filen ad gangen - men kan så til gengæld betyde at
> andre brugere kommer til at vente på at få vist en side.
Jeg tror ikke, det tager mange splitsekunder at opdatere et tal i en
tekstfil, der kun indeholder dette tal og intet andet.
> En anden og måske smartere mulighed er at lægge tællerkoden i
> global.asa under Session_OnStart. Den kode køres netop når en session
> starter (altså når en bruger første gang kalder en asp-side).
Du kan se min global.asa i øverste kodeboks på
http://hjemmesideskolen.dk/scripts/brugere.asp
Hvordan ville du putte det ind der, så det ikke forstyrrer den anden
funktion i den fil? Og hvordan skal aflæsningen af data skrives på siderne?
> Man kan evt. overveje at gemme antallet i en applicationvariabel i
> stedet for i en fil - det er hurtigere at tilgå og dermed er der
> mindre chance for evt. flaskehalsproblemer.
Så render vi igen ind i det kedelige, at jeg er total novice i asp.
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk -
http://html-faq.dk
http://ginnerskov.frac.dk