Avatar billede eerikk Nybegynder
14. februar 2005 - 12:53 Der er 10 kommentarer og
1 løsning

At hente hit-statistik ud fra simpel tabel

Jeg har en table der registrerer hver eneste gang en bruger kigger på en enkelt side på min hjemmeside:

create table hit(
  pagename VARCHAR(100) NOT NULL,
  ipaddr VARCHAR(20) NOT NULL,
  _date DATE,
  _time TIME
);

Den registrerer hvilken side der er kigget på (pagename - kunne for eks. være "www.xxx.dk/xxx.jsp"), og den registrerer brugerens IP-adresse, datoen og tiden.

Hvilke data kunne være interessante at se på, på en statistik-side, og hvilke queries ville hente dem ud? Hvad ville man for eks. kalde for et "unikt hit" og så videre :o)

Gimme some ideas and queries! ;o}

-Erik
Avatar billede alister_crowley Nybegynder
14. februar 2005 - 13:00 #1
Et unikt hit er: 1 hit pr. IP , cookies tæller ikke.
Avatar billede eerikk Nybegynder
14. februar 2005 - 13:02 #2
alister crwley>> Så en person med fast IP, kan kun lave et hit pr. hjemmeside om året?

"Gimme some ideas and queries! ;o}" hehe
Avatar billede alister_crowley Nybegynder
14. februar 2005 - 16:24 #3
nej, 1 hit om dagen pr. IP er unikt.
Avatar billede arne_v Ekspert
14. februar 2005 - 16:25 #4
Jeg ved ikke hvad et unikt hit er.

Man taler tit om unikke besøgende.

Som reelt er antal sessioner.

Det beregner man ofte udfra access log'en idet softwaren så gætter på hvilke
requests der hører sammen i en session.

Men dynamsiske sider som f.eks. JSP kan du få kaldt noget kode ved session
create, således at du har de helt præcise oplysninger.
Avatar billede eerikk Nybegynder
14. februar 2005 - 17:07 #5
Nu handler det jo heller ikke kun om hvad et unikt hit er, men forslag til quesries der kunne give interessante data. Hvad med for eks. en der modtager et en IP-adr. og returnerer antal gange denne har været på siden, eller måske en der måler hvilke sider der er mest besøgte eller ????

"Gimme some ideas and queries! ;o}"
Avatar billede arne_v Ekspert
14. februar 2005 - 17:10 #6
SELECT _date,pagename,COUNT(*) AS pghit
FROM hit
GROUP BY _date,pagename

må vel være en basis query
Avatar billede arne_v Ekspert
14. februar 2005 - 17:12 #7
SELECT pagename,COUNT(*) AS pghit
FROM hit
WHERE X < _date AND _date < Y
GROUP BY pagename
ORDER BY pghit DESC
Avatar billede Slettet bruger
17. februar 2005 - 00:39 #8
Hits fordelt på ugedag:

SELECT WEEKDAY(_date) AS ugedag, COUNT(*)
FROM hit
GROUP BY ugedag

Eller på timer:

SELECT HOUR(_time) as timetal, COUNT(*)
FROM hit
GROUP BY timetal

De kan give et overblik over hvornår dine sider er mest besøgt (og dermed hvornår din server er mest belastet.)

Hvorfor har du egentlig dato og tid splittet op i 2 felter? De kunne lige så godt have ligget sammen i en DATETIME.
Avatar billede arne_v Ekspert
25. februar 2005 - 20:26 #9
eerik>

Kommet videre ?
Avatar billede eerikk Nybegynder
14. marts 2005 - 10:12 #10
arne v>> Nej - jeg lukker vel. Dem der vil have point kan smide et svar.
Avatar billede Slettet bruger
14. marts 2005 - 23:01 #11
svar
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
Computerworld tilbyder specialiserede kurser i database-management

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