Avatar billede sblar Nybegynder
27. marts 2003 - 10:15 Der er 7 kommentarer og
1 løsning

Kun 1 bruger ad gangen

Hvordan sikrer jeg at der kun er 1 bruger ad gangen på min applikation? Jeg har forsøgt med følgende i global.asax:
Sub Session_OnStart()
Application("NumSession") = Application("NumSession") + 1
End Sub

Sub Session_OnEnd()
Application("NumSession") = Application("NumSession") - 1
End Sub

og i selve applikationen:
  Sub Page_Load(Src As Object, e As EventArgs)
    If Application("NumSession") > 1 Then
        Response.Redirect("Occupied.aspx")
    End If

Men det virker ikke. Application("NumSession") tælles ikke ned. Hvad er der galt?
Avatar billede carpediem Nybegynder
27. marts 2003 - 10:20 #1
Lav din Sub Session_OnEnd
Lav så en unload.aspx der ser således ud:
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<HTML><HEAD><title>Log af</title></HEAD>
<BODY><P>Logger af...</P>
<%
Session.Abandon
%>
<SCRIPT LANGUAGE=javascript>
<!--
   
    window.parent.close();
//-->
</SCRIPT>
</BODY>
</HTML>

På alle dine sider sætter du så denne i din a<body>:
onBeforeUnload="java script:window.open('unload.asp', 'Unload', 'width=25, height=25, toolbar=no, scrollbars=no, location=no, status=no')"
Avatar billede sblar Nybegynder
27. marts 2003 - 10:39 #2
carpediem> det virker desværre ikke. Den tæller stadig ikke NumSession ned.
Avatar billede carpediem Nybegynder
27. marts 2003 - 11:11 #3
Så prøv at sætte denne ind lige inden session.abandon

Application("NumSession") = Application("NumSession") - 1
Avatar billede sblar Nybegynder
27. marts 2003 - 12:25 #4
Det virker heller ikke. Bare lige for at være helt sikker satte jeg en knap på som ved tryk tæller NumSession 1 ned, ingen problmer her.
Jeg fatter ikke hvad der sker. Det tyder da på at Session_OnEnd aldrig køres.
Avatar billede sblar Nybegynder
27. marts 2003 - 12:43 #5
Jeg har fundet ud af hvad der gik galt. Åbentbart deler ASP og ASP.NET ikke sesion variabler, så ved at ændre unload.asp til ASP.NET lykkedes det at tælle NumSession ned.
<%@ Page Language="VB" %>
<script runat="server">

Sub Page_Load(Src As Object, e As EventArgs)
    Session.Abandon
End Sub

</script>
<html>
<head>
</head>
<body>

<script language="javascript">
<!--
   
    window.parent.close();
//-->
</script>

    <form runat="server">
        <!-- Insert content here -->
    </form>
</body>
</html>
Avatar billede carpediem Nybegynder
27. marts 2003 - 12:49 #6
Nå nej, det er da rigtigt. Havde jeg ikke lige overvejet.
Avatar billede sblar Nybegynder
27. marts 2003 - 12:51 #7
OK. Jeg undrer mig bare over alt det her skal være nødvendigt, men det er nok fordi jeg ikke helt forstår hvordan en session afsluttes. Er det kun ved timeout og session.abandon?
Avatar billede carpediem Nybegynder
27. marts 2003 - 12:53 #8
Ja, desværre. Har selv kæmpet en kamp med det for noget tid siden.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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