---
title: "Vad är felet? (inloggningskod)"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/95989-vad-är-felet-inloggningskod"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "magnusfeldth"
published: "2004-01-28T13:23:34.000Z"
updated: "2004-01-29T17:17:58.000Z"
replies: 27
views: 732
page: 1
pages: 2
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/95989-vad-är-felet-inloggningskod"
---

# Vad är felet? (inloggningskod)

_Sida 1 av 2._

## #1 — magnusfeldth, 2004-01-28T13:23Z

Jag försöker genom att använda cookies och if-satser hålla en användare inloggad. Den kollar om sessionen inte är online, och är den inte det, men cookien "inloggad"=ja så ska den kolla om cookievärdena för användarnamn och lösenord finns i databasen, och om de finns så ska den skapa sessionen igen. 
Kod: 

```
<% if Session("VTXOnline") <> "Ja" and Request.Cookies("tubsockor")("inloggad") = "Ja" then
              
              	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("sockdb/vtforum.mdb")

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

<% '====================================================================================================================== %>
<% ' Kontrollera användarnamn, lösenord och behörighet %>
<% '====================================================================================================================== %>

<% Visa = "SELECT * FROM sockuser"
   RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic

	X = FALSE

	Do Until X = TRUE OR RecSet.EOF

	If RecSet("Usernamn") = Request.Cookies("tubsockor")("usernamn") Then
	X = TRUE
	Exit Do
	End If

	RecSet.MoveNext

	Loop

	If X = TRUE Then

		Y = FALSE
		Do Until Y = TRUE OR RecSet.EOF

		If RecSet("Losenord") = Request.Cookies("tubsockor")("losenord") Then
		Y = TRUE
		Exit Do
		End If

		RecSet.MoveNext

		Loop

	

	End If

	If X = TRUE AND Y = TRUE Then 

	Session("VTXOnline") = "Ja"
	Response.Cookies("tubsockor")("usernamn") = RecSet("usernamn")	
	Response.Cookies("tubsockor")("namn") = RecSet("Namn")
	Response.Cookies("tubsockor")("epost") = RecSet("Epost")
	Response.Cookies("tubsockor")("inloggad") = "Ja"
    Response.Cookies("tubsockor").Expires = DateAdd("d", 5, Date)

	
	end if 
	end if%>
```

Men det blir inget av det! Vad är fel?

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

## #2 — @nders, 2004-01-28T13:27Z

Till att börja med kan du kasta bort det där inloggningsscriptet (som verkar härstamma från idg, oh hemska idg), så långt du bara kan, gärna dit där pepparn växer.

Scriptet är värdelöst. Katastrofalt och hemskt, och lägg inte tid på att försöka få det att fungera.

Kika här i asp-forumet efter varianter som är 236 miljoner gånger bättre.

Mvh

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

## #3 — magnusfeldth, 2004-01-28T13:28Z

:e , japp det är idg-script

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

## #4 — @nders, 2004-01-28T13:30Z

Scriptet tillåter nämligen att vilken användare som helst i tabellen loggar in med vilket lösenord som helst, som finns i tabellen.

Det är enkelt att göra ett inloggningsscript på cirkus fyra rader som är extremt mycket bättre, snabbare och säkrare än de exkrementer du försökt använda ovan.

Det finns inget kodstycke som någonsin producerats i denna värld som motsvarar detta inloggningsscripts värdelöshet.

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

## #5 — m_soderlund, 2004-01-28T14:12Z

@nders - du fet-rockar! (fast det visste du väl ;))

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

## #6 — magnusfernstrom, 2004-01-28T14:19Z

Håller med m_soderlund!
Så jäkla cool :)

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

## #7 — @nders, 2004-01-28T16:48Z

Jag skrev om koden i första inlägget till detta:

```
<% 
if Session("VTXOnline") <> "Ja" and Request.Cookies("tubsockor")("inloggad") = "Ja" then
	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("sockdb/vtforum.mdb")
	strSQL = "SELECT * FROM sockuser [b]WHERE Usernamn = '" & f(Request.Cookies("tubsockor")("usernamn")) & "' AND Losenord = '" & f(Request.Cookies("tubsockor")("losenord")) & "'[/b]"
	set objRS = Connect.Execute (strSQL)
	if not objRS.EOF Then ' Inloggningen är korrekt
		Session("VTXOnline") = "Ja"
		Response.Cookies("tubsockor")("namn") = objRS("Namn")
		Response.Cookies("tubsockor")("epost") = objRS("Epost")
		Response.Cookies("tubsockor").Expires = DateAdd("d", 5, Date)
	End if
	objRS.Close : set objRS = Nothing
	Connect.Close : set Connect= Nothing
End if

function f(strText)
	f = Replace(strText, "'", "''")
end function
%>
```

Fungerar det bättre?

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

## #8 — magnusfeldth, 2004-01-28T17:23Z

Sorry, felmess:

```
Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/vitatubsockorweb/kollavtxinlogg.asp, line 5, column 170
strSQL = "SELECT 1 FROM sockuser WHERE Usernamn = '" & f(Request.Cookies("tubsockor")("usernamn")) & "' AND Losenord = '" & f(Request.Cookies("tubsockor")("losenord")) & '" &
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------^
```

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

## #9 — magnusfernstrom, 2004-01-28T17:43Z

```
strSQL = "SELECT 1 FROM sockuser WHERE Usernamn = '" & f(Request.Cookies("tubsockor")("usernamn")) & "' AND Losenord = '" & f(Request.Cookies("tubsockor")("losenord")) & "'" &
```

Fungerar detta?

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

## #10 — @nders, 2004-01-28T17:51Z

Så här borde det se ut:

```
strSQL = "SELECT 1 FROM sockuser WHERE Usernamn = '" & f(Request.Cookies("tubsockor")("usernamn")) & "' AND Losenord = '" & f(Request.Cookies("tubsockor")("losenord")) & "'"
```

Ledsen, jag klantade mig. Igen.

Mvh

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

## #11 — magnusfernstrom, 2004-01-28T18:51Z

> **@nders skrev:**
>
> Ledsen, jag klantade mig. Igen.

Ja! hoppas du skämms rejält nu.
;)

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

## #12 — @nders, 2004-01-28T18:54Z

Jag kan ju passa på att nämna, att om man ändå håller på, kan man ju passa på att byta ut Access-drivisen till OLEDB-dito. Se <https://www.connectionstrings.com> .

Mvh

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

## #13 — magnusfernstrom, 2004-01-28T18:55Z

Varför skall man göra detta @nders?
Har aldrig riktigt fattat det!

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

## #14 — @nders, 2004-01-28T19:01Z

OLEDB-drivern är snabbare, och i min uppfattning även bättre än att använda den gamla Access-drivern.

Du kan se jämförelserna [här](http://www.4guysfromrolla.com/webtech/063099-1.shtml), även om artikeln inte direkt bär dagens datum.

Mvh

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

## #15 — magnusfernstrom, 2004-01-28T19:22Z

Okej tack...Ska kolla :)

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

## #16 — magnusfeldth, 2004-01-28T19:26Z

> **@nders skrev:**
>
> Ledsen, jag klantade mig. Igen.

En tillklantning till så väntar det kanske ett jobb hos IDG? :e

Funkar finfint nu. Ska ta och ändra om detta till min ordinarie inloggskod också, så kan ju idg dra dit peppar växer som nån klok man sa för länge sedan.

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

## #17 — BulletBoyCrime, 2004-01-28T19:30Z

> **magnusfeldth skrev:**
>
> En tillklantning till så väntar det kanske ett jobb hos IDG? :e

Njäe...någon som @nders kan bara inte halka så lågt. :OO :e

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

## #18 — @nders, 2004-01-28T19:35Z

> **magnusfeldth skrev:**
>
> Funkar finfint nu. Ska ta och ändra om detta till min ordinarie inloggskod också, så kan ju idg dra dit peppar växer som nån klok man sa för länge sedan.

Härligt!

Jag ska be att få understryka dock, att idg gör mycket annat bra. Men just detta inloggningsscript är alldeles fantastiskt, sensationellt, superlativt illa så det faktiskt sjunger sämre än Håkan Hellström. 

Mvh

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

## #19 — magnusfeldth, 2004-01-29T16:42Z

OBS! Det var visst vissa fortsatta problem med koden. Den gillar inte detta: 

```
Körningsfel i Microsoft VBScript (0x800A000D)
Inkompatibla typer: 'Recset'
/vitatubsockorweb/kollavtxinlogg.asp, line 9
```

Testat att ändra till RS alternativt Recset överallt, samma prob uppstår.

Rad nio är "Response.Cookies("tubsockor")("namn") = Recset("Namn")"

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

## #20 — @nders, 2004-01-29T16:47Z

Hmm.

Om det är från min kod ovan, så ska det vara **objRS**, inget annat.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/95989-vad-är-felet-inloggningskod  
Nästa sida: https://www.webforum.nu/amne/asp/95989-vad-är-felet-inloggningskod/page2.md
