---
title: "inloggningsproblem till mysql databas"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/103961-inloggningsproblem-till-mysql-databas"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "golgata"
published: "2004-05-20T11:24:36.000Z"
updated: "2004-05-20T19:56:34.000Z"
replies: 2
views: 256
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/103961-inloggningsproblem-till-mysql-databas"
---

# inloggningsproblem till mysql databas

## #1 — golgata, 2004-05-20T11:24Z

Varför får jag upp följande felmeddelande när jag försöker logga in.

Microsoft OLE DB Provider for ODBC Drivers error '80040e21' 

Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done. 

/community/login_check.asp, line 24 

Har följande kod.

 001:  \<% option explicit %\> 
 002:   
 003:  \<!--#include file="conn.asp"--\> 
 004:  \<% 
 005:  'DIM 
 006:  Dim iLoginFusk 
 007:  Dim RecSet, SQL 
 008:  ' Detta har Jonas lagt till 011019 
 009:  ' iLoginFusk är antal minuter innan man kan logga in igen 
 010:  ' och få inloggningen i statistiken. 60 = 1 timme alltså. 
 011:   
 012:  iLoginFusk = 60 
 013:   
 014:  Set RecSet = Server.CreateObject("ADODB.Recordset") 
 015:   
 016:  SQL = "SELECT \* FROM comm_members WHERE status = 'online'" 
 017:  RecSet.Open SQL, Connect, 3, 3 
 018:   
 019:  '----- Rensar bort sånna som inte loggat ut korrekt.. ------- 
 020:   
 021:  Do Until RecSet.EOF 
 022:   
 023:  If DateDiff("n", RecSet("datum"), Now) \> 3 Then 
 024:  RecSet("status") = "offline" 
 025:  RecSet.Update 
 026:  End If 
 027:   
 028:  RecSet.MoveNext 
 029:  Loop 
 030:   
 031:  RecSet.Close 
 032:   
 033:  '---------------- SLUT PÅ UTRENSNINGEN ------------------ 
 034:   
 035:  SQL = "SELECT \* FROM comm_members WHERE username='" &Request.Form("username")& "' AND losen='" &Request.Form("losen")& "'" 
 036:  RecSet.Open SQL, Connect, 3, 3 
 037:   
 038:  if RecSet.EOF = false Then 
 039:   
 040:  RecSet("status") = "online" 
 041:  ' Motverkar loginfusk 
 042:   
 043:      If DateDiff("n", Recset("datum"), Now()) \> iLoginFusk Then 
 044:          Recset("antal") = RecSet("antal") + 1  
 045:      End If 
 046:  ' Slut fusk 
 047:   
 048:      RecSet("datum") = Now 
 049:       
 050:   
 051:      RecSet.Update 
 052:      Session("namn") = RecSet("fnamn") 
 053:      Session("login") = "ok" 
 054:      Session("id") = RecSet("id") 
 055:      Session("epost") = RecSet("epost") 
 056:      Session("bild") = Recset("bild") 
 057:      Session.TimeOut = 3 '\<-- Kontrollera 
 058:   
 059:      RecSet.Close 
 060:      Set RecSet = nothing 
 061:       
 062:      Response.Redirect "frame.asp" 
 063:   
 064:  End If 
 065:   
 066:   
 067:  RecSet.Close 
 068:  Set RecSet = nothing 
 069:  Session("meddelande") = "Tyvärr! Fel användarnamn eller lösenord. Försök igen!" 
 070:  Response.Redirect "../default.asp" 
 071:  %\>

Permalänk: https://www.webforum.nu/p/103961

## #2 — @nders, 2004-05-20T11:32Z

1) Sökfunktionen gav dig inga tips på felmeddelandet?
2) Använd \[kod\]-taggar.
3) Jag är osäker på om MySQL-providern stöder uppdatering på det sättet som du gör. Använd en UPDATE-SQL-fråga istället.

Permalänk: https://www.webforum.nu/p/1351474

## #3 — Engine^, 2004-05-20T19:56Z

Detta kan väl fungera kanske...

```
<% option explicit %> 

<!--#include file="conn.asp"--> 
<% 
Dim iLoginFusk 
Dim RecSet, SQL 
' Detta har Jonas lagt till 011019 
' iLoginFusk är antal minuter innan man kan logga in igen 
' och få inloggningen i statistiken. 60 = 1 timme alltså. 

iLoginFusk = 60 

Set RecSet = Server.CreateObject("ADODB.Recordset") 

SQL = "SELECT id FROM comm_members WHERE status = 'online'" 
RecSet.Open SQL, Connect, 3, 3 

'----- Rensar bort sånna som inte loggat ut korrekt.. ------- 

Do Until RecSet.EOF 
  If DateDiff("n", RecSet("datum"), Now) > 3 Then 
    SQL = "UPDATE comm_members SET status = 'offline' WHERE id = " & RecSet("id")
    Connect.Execute SQL, , 128
  End If 

  RecSet.MoveNext 
Loop 

RecSet.Close 

'---------------- SLUT PÅ UTRENSNINGEN ------------------ 

strUsername = Replace(Request.Form("username"), "'", "''")
strPassword = Replace(Request.Form("losen"), "'", "''")

SQL = "SELECT status, antal, datum, fnamn, id, epost, bild FROM comm_members " & _
      "WHERE username = '" & strUsername & "' AND losen = '" & strPassword & "'" 
      
RecSet.Open SQL, Connect, 3, 3 

If Not RecSet.EOF Then 
  SQL = "UPDATE comm_members SET status = 'online' WHERE id = " & RecSet("id")
  Connect.Execute SQL, , 128

  ' Motverkar loginfusk 
  If DateDiff("n", RecSet("datum"), Now()) > iLoginFusk Then 
    SQL = "UPDATE comm_members SET antal = antal + 1 WHERE id = " & RecSet("id")
    Connect.Execute SQL, , 128
  End If
  ' Slut fusk 

  SQL = "UPDATE comm_members SET datum = NOW() WHERE id = " & RecSet("id")
  Connect.Execute SQL, , 128

  Session("namn") = RecSet("fnamn") 
  Session("login") = "ok" 
  Session("id") = RecSet("id") 
  Session("epost") = RecSet("epost") 
  Session("bild") = Recset("bild") 
  Session.Timeout = 3 '<-- Kontrollera 

  RecSet.Close 
  Set RecSet = Nothing 

  Response.Redirect "frame.asp" 
End If 

RecSet.Close 
Set RecSet = Nothing 

Session("meddelande") = "Tyvärr! Fel användarnamn eller lösenord. Försök igen!" 
Response.Redirect "../default.asp" 
%>
```

Permalänk: https://www.webforum.nu/p/1351752

---

Tråden på webben: https://www.webforum.nu/amne/asp/103961-inloggningsproblem-till-mysql-databas
