/ 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
hvad går det her?
Fra : pepss


Dato : 26-11-03 12:46

Hejsa NG

jeg er ved at se om jeg kan finde ud af hvordan en chat virker!
jeg har fundet et eks. på
http://activedeveloper.dk/aspdigital/studies/chat.asp som jeg kikker på.
der er bare en ting jeg ikke fatter noget af!

hvordan virker det her?

If Len(Application("ChatLog")) > 10000 Then
Application.Lock
Application("ChatLog") = ""
Application.UnLock
End If

--
pepss
den ordblinde der prøver at blive web-designer
www.cafe-flirt.dk
www.team-blitz.dk



 
 
Jens Gyldenkærne Cla~ (26-11-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-11-03 15:04

pepss skrev:

> If Len(Application("ChatLog")) > 10000 Then

Hvis længden af application-variablen "Chatlog" er større end
10000, så:

> Application.Lock

Lås applicationen (så andre sessions ikke kan ændre i
applicationvariable)

> Application("ChatLog") = ""

Nulstil loggen (sæt den til en tom streng)

> Application.UnLock

Fjern låsen på applikationen.


Var det forklaring nok?
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

pepss (26-11-2003)
Kommentar
Fra : pepss


Dato : 26-11-03 15:32


"Jens Gyldenkærne Clausen" skrev
> pepss skrev:
> > Application.Lock
>
> Lås applicationen (så andre sessions ikke kan ændre i
> applicationvariable)
>
> > Application.UnLock
>
> Fjern låsen på applikationen.
>
>
> Var det forklaring nok?

tja... de der Application.Lock UnLock er jeg ikke helt med på....
du skriver at andre sessions ikke kan ændre i dem. det forstå jeg ikke
helt...
det eks. jeg fandt bliver der ikke gjort brug af sessions (altså jeg som
kender den sessions(navn)) så jeg går ud fra af det ikke er sådan nogen du
snakker om?
jeg vil blive meget glad for lidt mere forklaring om Application.Lock UnLock


--
pepss
den ordblinde der prøver at blive web-designer
www.cafe-flirt.dk
www.team-blitz.dk



Jens Gyldenkærne Cla~ (26-11-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-11-03 16:02

pepss skrev:

> jeg vil blive meget glad for lidt mere forklaring om
> Application.Lock UnLock

Hvis man _ikke_ låser applikationen, kan man få problemer med at
flere brugere opdaterer på samme tid.

Et typisk eksempel er en onlinetæller.

Den kunne laves som her:

<%
Application("NumVisits") = Application("NumVisits") + 1
%>

- men hvis to personer (svarende til to browsersessions) på samme
tid kører ovenstående kode, bliver kun den ene talt.

Eksempel:

Kl. 13.45.33 indeholder NumVisits værdien 42.
Kl. 13.45.35 indgår på samme tid to requests til filen - fx et fra
Frederik og et fra Henrik.
I begge tilfælde tager asp-parseren værdien af NumVisits - som jo
er 42 - og lægger én til. Så når begge requests er kørt igennem, er
værdien 43, ikke 44 som den skulle have været.

Hvis man i stedet havde låst applikationen:

<%
Application.Lock
Application("NumVisits") = Application("NumVisits") + 1
Application.Unlock
%>

- så vil den af de to request der "kommer først" låse alle
applikationsvariable før den læser og skriver til dem. Det betyder
at nr. 2 pænt må vente til nr. 1 låser op.

Du kan se samme eksempel her:
<http://www.html.dk/dokumentation/objects/asp/intr84h7.htm>
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

pepss (26-11-2003)
Kommentar
Fra : pepss


Dato : 26-11-03 17:07


"Jens Gyldenkærne Clausen" skrev
> pepss skrev:
>
> > jeg vil blive meget glad for lidt mere forklaring om
> > Application.Lock UnLock
>
> Hvis man _ikke_ låser applikationen, kan man få problemer med at
> flere brugere opdaterer på samme tid.

tak for dit svar!


--
pepss
den ordblinde der prøver at blive web-designer
www.cafe-flirt.dk
www.team-blitz.dk



pepss (26-11-2003)
Kommentar
Fra : pepss


Dato : 26-11-03 21:16


"Jens Gyldenkærne Clausen" skrev
> pepss skrev:
>
> > jeg vil blive meget glad for lidt mere forklaring om
> > Application.Lock UnLock

jeg har lige et par spørgsmål mere

1.
kan man bruge Application som et array?

2.
kan man udskrive Application på en anden side?
jeg gætter godt nok på man ikke kan for jeg kunne ikke få det til at virke



--
pepss
den ordblinde der prøver at blive web-designer
www.cafe-flirt.dk
www.team-blitz.dk



Jens Gyldenkærne Cla~ (27-11-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-11-03 11:30

pepss skrev:

> kan man bruge Application som et array?

Det er allerede en form for array - men hvis du mener om man kan
lægge et array ind i Application-objektet så er svaret ja.

I princippet kan ethvert objekt gemmes i en Applicationvariabel.
Nogle objekttyper er upraktiske at gemme i Application - det gælder
fx databaseforbindelser (connections og recordset) - men du kan
sagtens gemme et normalt array i en Applicationvariabel.


> kan man udskrive Application på en anden side?

Lige så meget (eller lidt) som du kan udskrive Application på den
aktuelle side. Application er et objekt der som udgangspunkt ikke
har nogen tekstlig repræsentation. Men hvis du fx gemmer en
tekststreng i en Applicationvariabel, så kan den udskrives fra alle
asp-sider i din applikation.

Det er vigtigt at du skelner mellem adgang (scope) til variabler og
udskrift (repræsentation) af variable.

En variabels scope afgør hvor den kan bruges.

Application-variable kan bruges af alle sider på et site. Hvis
siden "start.asp" sætter variablen <% Application("tilladRet") =
True %>, så kan alle andre sider på sitet (uanset hvem der læser
dem) aflæse værdien True hvis de undersøger
Application("tilladRet").

Session-variable kan også bruges af alle sider - men her er det kun
inden for samme browsersession. Derfor kan én bruger fx ved at
angive brugernavn/adgangskode på login.asp sætte variablen <%
Session("userID") = 42 %>. På alle de sider (på sitet) som denne
bruger nu besøger, kan variablen Session("userID") læses med
værdien 42. Men for andre brugere, vil værdien af Session("userID")
være en anden.

Endelig er der de variable man erklærer direkte på en side (Dim
strSQL). De kan kun læses inden for selve siden - og kun af én
browsersession. Hvis de er erklæret inde i en procedure (sub) eller
funktion (function), kan de kun læses derinde.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

pepss (27-11-2003)
Kommentar
Fra : pepss


Dato : 27-11-03 13:06


"Jens Gyldenkærne Clausen" skrev
> pepss skrev:
>
> > kan man bruge Application som et array?
>
> Det er allerede en form for array - men hvis du mener om man kan
> lægge et array ind i Application-objektet så er svaret ja.
>
> > kan man udskrive Application på en anden side?
>
> Lige så meget (eller lidt) som du kan udskrive Application på den
> aktuelle side. Application er et objekt der som udgangspunkt ikke
> har nogen tekstlig repræsentation. Men hvis du fx gemmer en
> tekststreng i en Applicationvariabel, så kan den udskrives fra alle
> asp-sider i din applikation.

puha det skal hvis lige tænkes igemmen ..... der er hvis lige en masse
jeg skal prøve med fra med

rigtig mange tak for dit svar!

--
pepss
den ordblinde der prøver at blive web-designer
www.cafe-flirt.dk
www.team-blitz.dk



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste