Avatar billede casperlundhansen Nybegynder
12. februar 2004 - 02:25 Der er 5 kommentarer

Session hænger med MySQL

Efter at jeg har konverteret fra Access til MySQL bliver session hængende, det er heller ikke muligt at logge af med:

<%
session.abandon
%>

Hvad kan det skyldes?
Avatar billede eagleeye Praktikant
12. februar 2004 - 08:35 #1
Session.abandon lukke ikke for en forbindelse til database der skal man bruger .Close på connection objectet.

Hvis det er session variable som ikke bliver slettet så det fordi session variable vil findes ind til man har lavet en redirect eller den side som kalder  session.abandon er færdig kørt.
Avatar billede casperlundhansen Nybegynder
12. februar 2004 - 12:33 #2
Jeg har en ganske almindelige logud, hvor session.abandon køres, det virkede fint på Access
Database forbindelser lukkes stadig med

    rs.Close
    Conn.Close
    Set Conn = Nothing
    Set rs = Nothing

Hvad kan jeg mere gøre?
Avatar billede casperlundhansen Nybegynder
12. februar 2004 - 15:11 #3
Her er mit login og global.asa
Måske findes fejlen her?

Global.asa:

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">


timeout_sek = 2


Sub Application_OnStart
    ' Nulstiller antallet af brugere når applikationen (serveren) startes
   
    Application.Lock
    Application("OnlineUsers") = ","
    Application.UnLock
   
   
    Application("ActiveUsers") = 0
End Sub

Sub Application_OnEnd
    ' Skriv kode som skal køres når applikationen (serveren) stoppes
End Sub

Sub Session_OnStart
    ' Forøger antallet af brugere med 1, når en session startes
    Application.Lock
        Application("ActiveUsers") = Application("ActiveUsers") + 1
    Application.UnLock
End Sub

Sub Session_OnEnd
    ' Reducer antallet af brugere med 1, når en session afsluttes
   
If Len(Session("username")) > 0 Then
    Application.Lock
    Application("OnlineUsers") = Replace(Application("OnlineUsers"), Session("username") & ",", "")
    Application.UnLock
End If
   
   
    Application.Lock
        Application("ActiveUsers") = Application("ActiveUsers") - 1
    Application.UnLock
End Sub
</SCRIPT>

Login.asp:

<%

Session.Timeout = 2


Sub AddOnlineUser()
    Application.Lock
    Application("OnlineUsers") = Application("Onlineusers") & Session("Username") & ","
    Application.UnLock
End Sub

if request.form("savelogin") = "true" then
response.cookies("email") = request.form("email")
response.cookies("email").Expires = now()+365
response.cookies("password") = request.form("password")
response.cookies("password").Expires = now()+365
elseif request.cookies("autologin") <> "yes" then
response.cookies("email") = ""
response.cookies("password") = ""
end if
if request.form("autologin") = "true" then
response.cookies("autologin") = "yes"
response.cookies("autologin").Expires = now()+365
response.cookies("email") = request.form("email")
response.cookies("email").Expires = now()+365
response.cookies("password") = request.form("password")
response.cookies("password").Expires = now()+365
end if

login_email = replace(request.form("email"), "'", "''")
if len(login_email) <= 0 AND request.cookies("autologin") = "yes" then
login_email = request.cookies("email")
response.write "["&request.cookies("autologin")&"]"
end if
login_password = trim(request.form("password"))
if len(login_password) <= 0 AND request.cookies("autologin") = "yes" then login_password = request.cookies("password")

connStr = "driver={MySQL ODBC 3.51 Driver};DATABASE=system;SERVER=localhost;UID=root;PWD=xxx;OPTION=16834;"
        Set Conn = Server.CreateObject("ADODB.Connection")
        Conn.Open ConnStr

set rs = Conn.Execute("SELECT email, password, fnavn, enavn, adresse, postnummer, `by` FROM members WHERE email = '"&login_email&"'")

if not rs.EOF AND not rs.BOF then
  if trim(rs("password")) = login_password then
  session("email") = rs("email")
  session("fnavn") = rs("fnavn")
  session("enavn") = rs("enavn")
  session("adresse") = rs("adresse")
  session("postnummer") = rs("postnummer")
  session("by") = rs("by")
  session("username") = rs("fnavn") & (" ") & rs("enavn") & ("  (") & rs("by") & (")")
  Call AddOnlineUser()
  response.redirect ("loggetind.asp?msg="&Server.UrlEncode(""))
  else
response.cookies("autologin") = "no"
response.redirect("loginerror.asp")
  end if
else
response.cookies("autologin") = "no"
response.redirect("loginerror.asp")
end if

rs.Close
Conn.Close
Set Conn = Nothing
Set rs = Nothing

    %>
Avatar billede casperlundhansen Nybegynder
12. februar 2004 - 16:56 #4
Aller første logon bliver ikke registreret og derefter hænger alle logon
Avatar billede casperlundhansen Nybegynder
13. februar 2004 - 14:25 #5
Lukker
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