---
title: "Databas/Sql/Session"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/12082-databas-sql-session"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "cHeMiCaL-X"
published: "2001-10-14T07:04:00.000Z"
updated: "2001-10-14T08:40:00.000Z"
replies: 23
views: 361
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/12082-databas-sql-session"
---

# Databas/Sql/Session

_Sida 1 av 2._

## #1 — cHeMiCaL-X, 2001-10-14T07:04Z

Hej jag har ett problem.. håller på med ett script där användaren måste logga in sig för att kunna läggat till, ta bort  och ändra information i databasen.

Så långt jag har kommit nu så får jag bara Internt Server Fel 500 hela tiden..

Ni ska få se koderna..

```
<% 

Session("username") = Request.Form("username")
Session("password") = Request.Form("password")

If Session("username") = "<% = RecSet('Username') %>" AND Session("password") = "<% = RecSet('Password') %>" THEN
Response.Write "You are logged in and are now allowed to edit the database."
Else
Response.Write "Login Failed, please check your username and password and try again"
Response.Write "<a href='admin_login.asp'>Try again</a>
End If
%>
```

Så här ser databas anslutningen + Sql uttrycket ut för scriptet och den ligger i en fil som heter db_adminlogin.asp

```
<% 

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open = "bypath"

		Addera = "SELECT * FROM users"

		Set RecSet = Server.CreateObject("ADODB.Recordset")
			
			' This opens the Sql querys with the help of Recordset
			RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic 
%>
```

Är ganska ny på det här med ASP, så jag skulle vara tacksam för alla svar jag skulle kunna få.

\[Redigerat av cHeMiCaL-X den 14 okt 2001\]

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

## #2 — icaaq, 2001-10-14T07:14Z

Ta bort snälla felmedelanden under verktyg....så ser du det riktiga felet ;)

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

## #3 — cHeMiCaL-X, 2001-10-14T07:25Z

I IIS under Custom Messages?

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

## #4 — @nders, 2001-10-14T07:26Z

Nix, i Internet Explorer.

Verktyg -\> Internetalternativ -\> Avancerat -\> Visa egna http-felmeddelanden / Show friendly error messages.

Mvh,

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

## #5 — cHeMiCaL-X, 2001-10-14T07:29Z

Då står det så här:

```
Microsoft VBScript compilation error '800a0409' 

Unterminated string constant 

/bypath/admin_login2.asp, line 36 

If Session("username") = "<% = RecSet('Username')
-------------------------------------------------^
```

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

## #6 — @nders, 2001-10-14T07:32Z

Jag kände på mig det.

Du kan inte ha asp-block i asp-block på det sättet.

Prova detta:

```
If Session("username") = RecSet("Username") AND Session("password") = RecSet("Password") THEN
```

Men, om det där är en inloggningskontroll, så bör du istället göra den jämförelsen direkt i SQL-frågan.

De båda kodstyckena du visar, hänger de ihop? Det ser ut så...

Mvh,

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

## #7 — cHeMiCaL-X, 2001-10-14T07:37Z

nu verkar det som jag har skrivit SQL uttrycket fel, Får mitt egna felmeddelande när jag ska logga in..

\[Redigerat av cHeMiCaL-X den 14 okt 2001\]

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

## #8 — @nders, 2001-10-14T07:39Z

Fast den andra kodsnutten du visade, den kan inte fungera. Du skall inte ha något = efter Connect.open, nämligen.

```
Connect.Open "bypath"
```

Mvh,

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

## #9 — cHeMiCaL-X, 2001-10-14T07:43Z

har tagit bort = på Connect.Open

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

## #10 — @nders, 2001-10-14T07:43Z

Ok, hur ser koden för hela den sidan ut?

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

## #11 — cHeMiCaL-X, 2001-10-14T07:47Z

lite jobbig att klistra in det här igen men här kommer den...

```
<!-- #include file="adovbs.inc" -->
<!-- #include file="db_adminlogin.inc" -->
<html>
<head>
<meta name="VI60_DTCScriptingPlatform" content="Klient (IE 4.0 DHTML)">
<title>The_Bypath Ftp-Server Ring</title> <LINK REL=STYLESHEET HREF="bypath.css" TYPE="text/css"></head>
<body bgproperties="fixed" background="images/bg_color.gif">
<center>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-left-width:0; border-right-width:0" bordercolor="#111111" width="63%" id="AutoNumber1" height="182">
  <tr>
    <td width="100%" bgcolor="#FFFFFF" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1" height="55">
    <p align="center">
    <img border="0" src="images/bypath-logo.gif"></td>
  </tr>
  <tr>
    <td width="100%" style="border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: solid; border-top-width: 1; border-bottom-style: solid; border-bottom-width: 1" height="19">
    <p align="center"><b><font size="1" face="Verdana">
    <a href="show.asp?Show=apps">Apps</a></font></b> 
    &#0124; <b><font size="1" face="Verdana">
    <a href="show.asp?Show=console">Console</a></font></b> &#0124; <b>
    <font size="1" face="Verdana">
    <a href="show.asp?Show=games">Games</a></font></b> &#0124; <b>
    <font size="1" face="Verdana">
    <a href="show.asp?Show=movies">Movies</a></font></b> &#0124; <b>
    <font size="1" face="Verdana">
    <a href="show.asp?Show=music">Music</a></font></b> &#0124; <b>
    <font face="Verdana" size="1"><a href="search.asp">Search - Not working.</a></font></b></td>
  </tr>
  <tr>
    <td width="100%" bgcolor="#FFFFFF" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1" height="68">
<% 

Session("username") = Request.Form("username")
Session("password") = Request.Form("password")

If Session("username") = RecSet("Username") AND Session("password") = RecSet("Password") THEN
Response.Write "You are logged in and are now allowed to edit the database."
Else
Response.Write "Login Failed, please check your username and password and try again <br>"
Response.Write "<a href='admin_login.asp'>Try again</a>"
End If
%>
    </td>
    </tr>
    <td width="100%" style="border-left: medium none #111111; border-right: medium none #111111; border-top-style: solid; border-top-width: 1; border-bottom-style: solid; border-bottom-width: 1" height="12">
    <p align="center"></td>
  </tr>
  <tr>
    <td width="100%" bgcolor="#FFFFFF" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1" height="24">
    <p align="left"><font face="Verdana" size="1"><b>Scripting and design: [cHeMiCaL-X] 
    - </b>This is a free service. If you dont like it, leave us!</font></td>
  </tr>
</table>
</center>
</body>
</html>
```

Databas kopplingen och SQL Uttrycket ser nu ut så här ( db_adminlogin.inc ):

```
<% 

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "bypath"

		Addera = "SELECT * FROM users Order BY Username"

		Set RecSet = Server.CreateObject("ADODB.Recordset")
			
			' This opens the Sql querys with the help of Recordset
			RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic 
%>
```

\[Redigerat av cHeMiCaL-X den 14 okt 2001\]

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

## #12 — @nders, 2001-10-14T07:53Z

Om du inte använder db_adminlogin.asp för annat, så ändra SQL-frågan till följande:

```
Addera = "SELECT * FROM users WHERE username = '" & Request.Form("username") & "' AND password = '" & Request.Form("password") & "'"
```

Byt sedan

```
If Session("username") = RecSet("Username") AND Session("password") = RecSet("Password") THEN
```

mot

```
If not RecSet.eof then
```

Sen kan du ju också kontrollera så att du har rätt värden med dig.

**Response.write Addera** precis innan du skapar det recordsetet.

Mvh,

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

## #13 — cHeMiCaL-X, 2001-10-14T08:05Z

Detta är vad jag fick när jag la in Response.Write precis för skapandet av recordsetet:

```
Microsoft VBScript runtime error '800a01a8' 

Object required: 'Respons' 

/bypath/db_adminlogin.inc, line 7
```

db_adminlogin.inc ser nu ut så här:

```
<% 

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "bypath"

		Addera = "SELECT * FROM users WHERE username = '" & Request.Form("username") & "' AND password = '" & Request.Form("password") & "'"
Respons.Write Addera
		Set RecSet = Server.CreateObject("ADODB.Recordset")
			
			' This opens the Sql querys with the help of Recordset
			RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic 
%>
```

Tack för hjälpen jag har fått hittils, uppskattar det!

\-----

Det var jag som hadde stavat fel på Response :)

\[Redigerat av cHeMiCaL-X den 14 okt 2001\]

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

## #14 — @nders, 2001-10-14T08:07Z

Du har glömt ett litet e.

```
Respons[b]e[/b].Write Addera
```

Mvh,

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

## #15 — cHeMiCaL-X, 2001-10-14T08:11Z

Verkar som inte den får med sig informationen från forumläret riktigt..
Jag får detta: SELECT \* FROM users WHERE Username = '' AND Password = 'Test'

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

## #16 — @nders, 2001-10-14T08:12Z

Då är det dags att kontrollera stavning på namnen du gett dina formulärfält och stavningen du använt í Request.Form i byggandet av SQL-frågan.

Mvh,

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

## #17 — cHeMiCaL-X, 2001-10-14T08:21Z

nu funkar det...

```
<form method ="Post" action="admin_login2.asp">
```

 låg på fel ställe

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

## #18 — cHeMiCaL-X, 2001-10-14T08:28Z

Nu till en annan sak.. Kan man köra två SQL satser samtidigt?
jag måste ju ha sql satserna för att rediger och lägga till och sånt
\+ att jag måste ha sql satserna för session...

Hur gör man det?

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

## #19 — cHeMiCaL-X, 2001-10-14T08:28Z

Tack för hjälpen..

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

## #20 — @nders, 2001-10-14T08:31Z

Jag förstår inte riktigt hur du menar.

Man kan i alla fall ha flera olika recordsets öppna samtidigt.

```
sqlfraga1 = "select * from tblBlah where a='oop'"
sqlfraga2 = "select * from tblBlah where b='kaah'"
set objRS = Connect.execute(sqlfraga1)
set objRS2 = Connect.execute(sqlfraga2)
```

Mvh,

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/12082-databas-sql-session  
Nästa sida: https://www.webforum.nu/amne/asp/12082-databas-sql-session/page2.md
