/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Cookie til HitCounter
Fra : Andreas Slot-Henriks~


Dato : 27-07-03 11:54

Hejsa...

Jeg har lidt bøvl med at få sat en cookie...

Jeg har efterhånden lavet en del hjemmesider, hvor jeg gerne vil have sat en
meget simpel tæller på, som folk selv kan logge på og se hvor mange hits,
der har været (ret primitivt...).

På det site, der skal tælles, har jeg sat følgende script på alle de sider,
ser skal tælles - ID'et bliver dog ændret fra site til site...:


<script language="JavaScript" type="text/javascript"><!--
var DocRef; DocRef=document.referrer; if(top.document.referrer!=null)
DocRef=top.document.referrer;
document.write("<img src='http://127.0.0.1/Counter/Counter.asp?Ref=|" +
DocRef
+ "|&userAgent=" + navigator.userAgent + "&usrID=1"
+ "&usrIDK=c4ca4238a0b923820dcc509a6f75849b' border='0' height='0'
width='0'>");
//--></script>


....ovenstående virker også perfekt... Eksterne sites bliver talt helt
rigtigt (næsten). For ikke at tælle ét besøg flere gange, ville jeg have en
session-variabel som var "True", når siden var/er talt første gang. Det
virkede ikke. Derefter førsøgte jeg med at lave en cookie. Men det virkede
heller ikke. I nedenstående kode, bruger jeg både session og cookie...:

' = = = = = = = = = = = = = = = C L I P S T A R T = = = = = = = = = = = =
= = =
If Session("seCount" & session.SessionID) = "" AND
Request.Cookies("CountedToday_" & strUserID) = "" Then
'Skriver en cookie, så brugeren kun bliver talt én gang pr. 25ende minut.
Response.Cookies("CountNow_" & strUserID) = "True"
Response.Cookies("CountNow_" & strUserID).Expires = Date & " " &
FormatDateTime(Now() + 0.0138888889, 4)

Session("seCount") = "Hit"

If Session("seCount" & session.SessionID) = "" OR
Request.Cookies("CountedToday_" & strUserID) = ""
strSQL = "SELECT * FROM tblCountSite WHERE (tblCountSite.CountSiteID = 0)"

' Skaber et recordset udfra SQL strengen
Set rsCount = Server.CreateObject("ADODB.Recordset")
rsCount.CursorType = adOpenKeyset
rsCount.LockType = adLockOptimistic
rsCount.Open strSQL, myConnCount

rsCount.AddNew
rsCount("CountUserID_Ref") = strUserID
rsCount("SessionID") = Session.SessionID
rsCount("Referent") = Trim(fixQuotes(Session("Referent")))
rsCount("DatoTid") = Trim(Now())

rsCount.Update
rsCount.Close
Set rsCount = Nothing
End If
End If 'Tjek på Session("Count")
' = = = = = = = = = = = = = = = C L I P E N D = = = = = = = = = = = = = =
=

....jeg har også forsøgt at tilføje denne linie til ovenstående:
'Response.Cookies("CountNow_" & strUserID).Domain = "domænet, hvorfra
tælleren aktiveres"

Scriptet virker perfekt, hvis jeg vil tælle det site, hvor selve tælleren
ligger på - men når jeg skal tælle andre sites, går det galt... Så genereres
cookien ikke - og Session-variablen bliver overskrevet med en ny!?!

Er det nogle, der har et forslag til, hvad der kan være gået galt og til,
hvordan jeg retter det?


mvh.
Andreas Slot-Henriksen



 
 
Ukendt (28-07-2003)
Kommentar
Fra : Ukendt


Dato : 28-07-03 21:05

> Er det nogle, der har et forslag til, hvad der kan være gået galt og til,
> hvordan jeg retter det?

Du bruger jo din locale IP(127.0.0.1) og for at din server skal kunne ses
fra andre computere skal du bruge din offentlige IP( der er noget med at det
ikke virker hvis man er bag en router eller noget), når du finder den kan du
skrive http://IP i din browser for at se om det virker.

Du kan finde din IP ved at skrive dxdiag i start > kør så finder du computer
navn, bagefter går du i DOS-Promt og skriver "ping <computernavn>" så skulle
den gerne skrive din IP(sådan gør jeg)

håber det hjalp

P.S. det virker indviklet når man læser noget jeg skriver, men det er
nemt(for mig).

>
>
> mvh.
> Andreas Slot-Henriksen
>
>



Andreas Slot-Henriks~ (28-07-2003)
Kommentar
Fra : Andreas Slot-Henriks~


Dato : 28-07-03 21:36

Hej **XxX**

> Du bruger jo din locale IP(127.0.0.1)

Jep... Det er rigtigt, at det er min lokale-ip adresse - men det er kun for
at
køre lidt test. I den "rigtige" kode, er det en helt anden sti til en alm
extern
ip-adresse. Det nytter bare ikke at skrive den på, da koden midlertidig er
fjernet, indtil jeg finder en løsning til at opretholde min session og/eller
cookie.


mvh.
Andreas



Jørn Andersen (29-07-2003)
Kommentar
Fra : Jørn Andersen


Dato : 29-07-03 05:15

On Mon, 28 Jul 2003 22:04:40 +0200, "*XxX*"
<fatman00hot-at-hotmail.com> wrote:

>Du kan finde din IP ved at skrive dxdiag i start > kør så finder du computer
>navn, bagefter går du i DOS-Promt og skriver "ping <computernavn>" så skulle
>den gerne skrive din IP(sådan gør jeg)

Er det ikke lettere blot at skrive:
ipconfig /all (Win XP/2000)
- ?

--
Jørn Andersen,
Brønshøj

Ukendt (29-07-2003)
Kommentar
Fra : Ukendt


Dato : 29-07-03 17:16


"Jørn Andersen" <jorn@jorna.dk> skrev i en meddelelse
news:v4tbivc9pi5uoivmq7p6osp2hr92ctjq9d@4ax.com...
> On Mon, 28 Jul 2003 22:04:40 +0200, "*XxX*"
> <fatman00hot-at-hotmail.com> wrote:
>
> >Du kan finde din IP ved at skrive dxdiag i start > kør så finder du
computer
> >navn, bagefter går du i DOS-Promt og skriver "ping <computernavn>" så
skulle
> >den gerne skrive din IP(sådan gør jeg)
>
> Er det ikke lettere blot at skrive:
> ipconfig /all (Win XP/2000)
> - ?
jo eller winipcfg i win98, men da er det så nemt at klikke på noget forkert,
hvis du forstår

>
> --
> Jørn Andersen,
> Brønshøj



Mohamed (20-11-2004)
Kommentar
Fra : Mohamed


Dato : 20-11-04 23:30

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">
   <a href="http://www.dinside.dk" target="_top"><img border="0" alt="Free Web
Page Hit Counters"
src="http://www.webcountersforfree.com/getcounter.cfm?userID=1385">
</a><br>
</td>
</tr>
</table>

Skriv din hjemmeside ved "http://www.dinside.dk" !!!
Det er en Counter til din hjemmeside,
hvis det er det du vil have!

mhv.
ME!!!

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jesper Nielsen (29-07-2003)
Kommentar
Fra : Jesper Nielsen


Dato : 29-07-03 00:43

> Scriptet virker perfekt, hvis jeg vil tælle det site, hvor selve tælleren
> ligger på - men når jeg skal tælle andre sites, går det galt... Så
genereres
> cookien ikke - og Session-variablen bliver overskrevet med en ny!?!

Jeg har udviklet et system til levering af bannerannoncer, og kender
problemet alt for godt.

Dit problem kan have rod i P3P (Platform for Privacy Prefrences) - som
standard blokerer i hvert tilfælde Internet Explorer ALLE cookies, som
forsøges sat fra et andet site end det, brugeren kigger på lige nu. Dvs., at
såfremt brugeren kigger på domain1.dk, og counter.asp på counter.domain2.dk
forsøger at sætte en cookie pga. en IMG (eller andet) tag, vil cookien blive
blokeret.

Du skal have oprettet et bibliotek på den server, som leverer counter filen.
Biblioteket skal hedde w3c, og skal ligge i roden. I denne folder skal du
lave to filer, p3p.xml og policy.xml. Eksempler på indholdet af disse filer
kunne f.eks. være (fra doubleclicks server):

p3p.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<META xmlns="http://www.w3.org/2000/12/P3Pv1">
<POLICY-REFERENCES>
<POLICY-REF about="/w3c/policy.xml">
<INCLUDE>/*</INCLUDE>
<COOKIE-INCLUDE>* * * </COOKIE-INCLUDE>
</POLICY-REF>
</POLICY-REFERENCES>
</META>

policy.xml er lang, så den vil jeg ikke poste her. Se istedet doubleclicks
på <http://ad.dk.doubleclick.net/w3c/policy.xml>. Tag evt. et kig på kilden.

Du kan IKKE benytte disse filer på din egen server - du skal lave dine egne.
Når du gør dette, får du også udregnet den P3P header, som du skal sende med
ud, for at du vil kunne sætte dine cookies.

Hav tålmodighed - det kan være en ret omfattende affære, at få P3P til at
opføre sig, som man vil have det til. Afsæt nogle timer til arbejdet. IBM
har lavet et Java program, som gør det let at lave din policy. Find den på
<http://www.alphaworks.ibm.com/tech/p3peditor>.

Du kan desuden læse mere om P3P på <http://www.w3.org/P3P/> - der er
læsestof til nogle timer.

Håber det hjalp.

--
Mvh. Jesper



Andreas Slot-Henriks~ (29-07-2003)
Kommentar
Fra : Andreas Slot-Henriks~


Dato : 29-07-03 14:20

Hej Jesper...

Det var en stor mundfuld... jeg prøver at gå i gang.

Mange tak for hjælpen!


mvh.
Andreas



Ukendt (30-07-2003)
Kommentar
Fra : Ukendt


Dato : 30-07-03 09:13


> Du skal have oprettet et bibliotek på den server, som leverer counter
filen.
> Biblioteket skal hedde w3c, og skal ligge i roden. I denne folder skal du
> lave to filer, p3p.xml og policy.xml. Eksempler på indholdet af disse
filer
> kunne f.eks. være (fra doubleclicks server):
>
> p3p.xml:
> <?xml version="1.0" encoding="UTF-8" ?>
> <META xmlns="http://www.w3.org/2000/12/P3Pv1">
> <POLICY-REFERENCES>
> <POLICY-REF about="/w3c/policy.xml">
> <INCLUDE>/*</INCLUDE>
> <COOKIE-INCLUDE>* * * </COOKIE-INCLUDE>
> </POLICY-REF>
> </POLICY-REFERENCES>
> </META>
>
> policy.xml er lang, så den vil jeg ikke poste her. Se istedet doubleclicks
> på <http://ad.dk.doubleclick.net/w3c/policy.xml>. Tag evt. et kig på
kilden.

Vil det sige at ved at lægge 2 filer på sin server så kan man godt lave
cookies for andre websteder.



Andreas Slot-Henriks~ (01-08-2003)
Kommentar
Fra : Andreas Slot-Henriks~


Dato : 01-08-03 08:09

Hej Jesper...

Jeg kom til at tænke på... hvorfor vil det egentlig ikke virke med Sessions
i stedet?
- en session oprettes jo lokalt på den webserver, asp-filen ligger på -
hvorfor kan man ikke få det til at virke ved at hente asp-filen som img?!?

mvh.
Andreas



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408848
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste