Avatar billede mettecarsten Nybegynder
09. august 2006 - 10:47 Der er 15 kommentarer og
1 løsning

Udelukke egen side i statistik

Hej eksperter

Jeg har rodet meget rundt med statisik omkring mine brugere. Jeg har lavet følgende kode, som fungerer næsten optimal (er indsat på alle sider):

<%
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk/") > 0 Then
    'Kommer fra mitdomæne.dk
    else

Streng = Request.ServerVariables("HTTP_REFERER")
Strenghost = Request.ServerVariables("HTTP_HOST")
Strengurl = Request.ServerVariables("URL")

StrSQL = "INSERT INTO 1emneord(Streng, Strenghost, Strengurl)"
StrSQL = StrSQL & "Values("
StrSQL = StrSQL & "'" & Streng & "',"
StrSQL = StrSQL & "'" & Strenghost & "',"
StrSQL = StrSQL & "'" & Strengurl & "'"
StrSQL = StrSQL & ")"

Set StrSQL = conn.execute(StrSQL)
End If
Conn.Close
Set Conn = Nothing
%>

Meningen er, at det skal registreres i databasen, hvor brugeren kommer fra, mens brugerens efterfølgende sidevisninger skal udelades. Altså registre, hvis brugeren f.eks. har fundet siden i google, mens generelt udelukke alle besøg, som kommer fra en side på mitdomæne.dk. Håber, det giver mening. Det fungerer pt. i nogle tilfælde, men ikke altid.

På forhånd tak.
Avatar billede kalp Novice
09. august 2006 - 10:52 #1
Avatar billede mettecarsten Nybegynder
09. august 2006 - 11:00 #2
Det kan du da have ret i. Jeg startede ud med ("HTTP_REFERER"),"mitdomæne.dk/"), som jeg havde set i andre indlæg, men det løste ikke problemet helt. Hvordan kan jeg ændre ("HTTP_REFERER"),"http://www.mitdomæne.dk/"), så den tager højde for alle slags?
Avatar billede kalp Novice
09. august 2006 - 11:06 #3
du kan lige prøve denne.. men føler mig temmelig rusten så du må lige bære over med mig hvis vi løser den ved flere forsøg først:)


<%
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk/") > 0 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk") > 0 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://mitdomæne.dk/") > 0 OR
InStr(Request.ServerVariables("HTTP_REFERER"),"http://mitdomæne.dk") > 0 then

  else

Streng = Request.ServerVariables("HTTP_REFERER")
Strenghost = Request.ServerVariables("HTTP_HOST")
Strengurl = Request.ServerVariables("URL")

StrSQL = "INSERT INTO 1emneord(Streng, Strenghost, Strengurl)"
StrSQL = StrSQL & "Values("
StrSQL = StrSQL & "'" & Streng & "',"
StrSQL = StrSQL & "'" & Strenghost & "',"
StrSQL = StrSQL & "'" & Strengurl & "'"
StrSQL = StrSQL & ")"

Set StrSQL = conn.execute(StrSQL)
End If
Conn.Close
Set Conn = Nothing
%>
Avatar billede mettecarsten Nybegynder
09. august 2006 - 11:14 #4
Jeg er virkelig glad for din hjælp, så det gør overhovedet intet, at der skal flere forsøg til :-)

Ovenstående kode giver desværre en syntax error
Avatar billede kalp Novice
09. august 2006 - 11:15 #5
hvad siger den helt præcis? jeg blander tit Java syntax sammen med ASP så det kan være en lille ændring der skal til:)
Avatar billede mettecarsten Nybegynder
09. august 2006 - 11:18 #6
Microsoft VBScript compilation error '800a03ea'

Syntax error

If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk/") > 0 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk") > 0 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://mitdomæne.dk/") > 0 OR
Avatar billede kalp Novice
09. august 2006 - 11:19 #7
dim minside

If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk/") > 0 Then
    minside = ja
    end if
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://mitdomæne.dk/") > 0 Then
    minside = ja
    end if
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.mitdomæne.dk") > 0 Then
    minside = ja
    end if
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://mitdomæne.dk/") > 0 Then
    minside = ja
    end if

if minside <> "ja" then
Streng = Request.ServerVariables("HTTP_REFERER")
Strenghost = Request.ServerVariables("HTTP_HOST")
Strengurl = Request.ServerVariables("URL")

StrSQL = "INSERT INTO 1emneord(Streng, Strenghost, Strengurl)"
StrSQL = StrSQL & "Values("
StrSQL = StrSQL & "'" & Streng & "',"
StrSQL = StrSQL & "'" & Strenghost & "',"
StrSQL = StrSQL & "'" & Strengurl & "'"
StrSQL = StrSQL & ")"

Set StrSQL = conn.execute(StrSQL)
End If
Conn.Close
Set Conn = Nothing
%>
Avatar billede mettecarsten Nybegynder
09. august 2006 - 11:28 #8
Nu kommer denne fejl:

Microsoft VBScript runtime error '800a01a8'

Object required: 'Conn'

/underside/index.asp, line 54

Linie 54 vedrører slet ikke din kode, men min først sql (Set rs = Conn.Execute(SQL)) ?????
Avatar billede kalp Novice
09. august 2006 - 11:30 #9
har du oprettet Conn?

altså

dim Conn
Avatar billede kalp Novice
09. august 2006 - 11:30 #10
og så kan jeg se at du nogle steder skriver Conn med stort og andre steder conn med småt
Avatar billede mettecarsten Nybegynder
09. august 2006 - 11:32 #11
Har nu rettet alle til stor C, men det får umiddelbart ingen betydning.
Avatar billede kalp Novice
09. august 2006 - 11:35 #12
men du har også direkte oprettet en objektet Conn?
som Dim Conn?
Avatar billede mettecarsten Nybegynder
09. august 2006 - 12:32 #13
Er lige blevet optaget af en andet projekt, men kigger snart på det igen - bare lige, da jeg ikke svarer så hurtigt længere :-)
Avatar billede mettecarsten Nybegynder
09. august 2006 - 14:07 #14
Har faktisk lige fået løst problemet - dog med lidt andre forudsætninger. Kører fint med denne kode, hvis nogle kan bruge det til noget:

<%
If InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.google.dk") = 1 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://www.google.com") = 1 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://search.msn.dk") = 1 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://search.msn.com") = 1 OR InStr(Request.ServerVariables("HTTP_REFERER"),"http://search.jubii.dk") = 1 Then

Streng = Request.ServerVariables("HTTP_REFERER")
Strenghost = Request.ServerVariables("HTTP_HOST")
Strengurl = Request.ServerVariables("URL")

StrSQL = "INSERT INTO 1emneord(Streng, Strenghost, Strengurl)"
StrSQL = StrSQL & "Values("
StrSQL = StrSQL & "'" & Streng & "',"
StrSQL = StrSQL & "'" & Strenghost & "',"
StrSQL = StrSQL & "'" & Strengurl & "'"
StrSQL = StrSQL & ")"

Set StrSQL = conn.execute(StrSQL)

else
' ikke fra en søgemaskine

End If
%>

Smid et svar, så du kan få dine velfortjente point. Tak for hjælpen!
Avatar billede kalp Novice
16. august 2006 - 09:25 #15
Det får du her:)
Undskyld forsinkelsen.

ps. hvad studere du?
Avatar billede mettecarsten Nybegynder
16. august 2006 - 09:29 #16
De kommer her :-)

Jeg studerer ikke - leger bare lidt med edb på hobbybasis.
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