Avatar billede klth Nybegynder
25. januar 2003 - 19:29 Der er 3 kommentarer og
2 løsninger

Problem med session i script der hentes via javascript (counter)

Hej,

Ved ikke om dette hører til i javascript eller ASP forum :)

Jeg har 2 filer.

Counter.asp - som indeholder sql til opdatering af hits osv.
test.asp - som indeholder selve counteren "Antal hits: xx" osv.


TEST.ASP:
<head>
<script language="javascript" src="counter.asp?id=1"></script>
</head>

<script language='javascript'>
    DD_Counter1();
</script>


COUNTER.ASP

' her er en masse ASP der skal opdater hits osv, se nedenfor

function DD_Counter1()
{ document.write("Antal hits: xx"); }


function DD_Counter1 hentes i test.asp, hvor der i test.asp bliver skrevet "Antal hits: xx".

I counter.asp er der så følgende ASP kode:

If Session("DCounter")<>"ok" then
WebHits=hits("Web_Hits")+1
dbCon.Execute("UPDATE Websites SET Web_Hits="&WebHits&" WHERE WebID="&request("id"))
Session("DCounter")="ok"
end if

Det bør jo være meget simpelt. Hvis session er andet end "ok" så +1 i hits og sæt derefter session til "ok", ellers - gør intet.  Men den bliver VED med at sætte +1 uanset hvor mange gange jeg opdaterer. Og ved at lave en response.write session("Dcounter") får jeg også et "ok" smidt i hovedet.

Jeg har mere eller mindre lokaliseret problemet til at være at det her hentes via javascript. Hvis jeg kører det hele i counter.asp, så virker det efter hensigten. Men da det skal kunne komme over i test.asp ved at hente formateringen og dataene "Antal hits:" og dataene "xx" (hits), lader det ikke til at virke.

Det MÅ kunne lade sig gøre... please help!  Kan desværre ikke give mere end 200 point for at rigtig svær (max sat af eksperten.dk)  :-)
Avatar billede klth Nybegynder
25. januar 2003 - 22:51 #1
Hmm kan kun se overskriften til mit "spørgsmål" nu ... hvor blev indholdet mon af?  - eller så kører eksperten.dk bare ikke helt optimalt nu.
Avatar billede klth Nybegynder
26. januar 2003 - 00:13 #2
Jeg kan evt. sende filerne til en der tror han kan løse det. Filerne er MEGET overskuelige og tager max 30 sekunder at læse og forstå koderne :-)
Avatar billede cpufan Juniormester
26. januar 2003 - 00:15 #3
If Session("DCounter")<>"ok" then
WebHits=hits("Web_Hits")+1
dbCon.Execute("UPDATE Websites SET Web_Hits="&WebHits&" WHERE WebID="&request("id")&)
Session("DCounter")="ok"
end if

Denne vil jeg tro gør det  (  id")&)        "&" er tilføjet  )
Avatar billede hf Nybegynder
26. januar 2003 - 21:48 #4
Er der en særlig årsag til at du vil kalde counter.asp via JavaScript? Jeg ville nok foretrække at gøre det med en include i stedet.
Avatar billede hf Nybegynder
27. januar 2003 - 09:10 #5
Jeg har lavet dette lille eksempel. Det virker:

------------------------
Test.asp:

<html>
<head>
<script language="javascript" src="counter.asp?id=1"></script>
</head>
<body>
<script language='javascript'>
    DD_Counter1();
</script>
</body>
</html>

------------------------------

Counter.asp:

<%
Response.Write "function DD_Counter1(){" & vbcrlf
Response.Write "document.write('Svar fra Counter.asp');" & vbcrlf
Response.Write "}" & vbcrlf
%>
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