Avatar billede Slettet bruger
19. januar 2006 - 01:18 Der er 11 kommentarer og
1 løsning

Siden kan ikke vises: Typer stemmer ikke overens: 'Session'?

Hejsa.

Jeg ved ikke hvad denne fejl betyder:
Siden kan ikke vises: Typer stemmer ikke overens: 'Session'
og hvordan kan jeg undgå den?


Detaljer:
Fejltype:
Der opstod en Microsoft VBScript-kørselsfejl (0x800A000D)
Typer stemmer ikke overens: 'Session'
/System - Guestbook/gbook2(web-graphics.net)/delgast.asp, line 8


Det er en alm. logind-side, hvor user og password passer perfekt iflg. databasen.
Avatar billede softspot Forsker
19. januar 2006 - 01:23 #1
Prøv at vise koden i den påg. linie. Det er typisk fordi der er en uoverensstemmelse mellem to typer i en sammenligning, f.eks. hvis du sammenligner en streng med en NULL-værdi (det kunne jo ske hvis et felt i databasen var NULL)...
Avatar billede Slettet bruger
19. januar 2006 - 01:34 #2
Linie 8: Session("inne") = True

lidt mere af koden:
<!--#include file="inc_settings.asp" -->
<%
Dim user, password, connect,RSlogin,rsgast,intupdate,rsupdate,strnamn,strurl,stremail,strMeddelande,stranswer,inttabort
user = Request.Form("user")
password = Request.Form("password")
Set RSlogin = connect.Execute("Select * From Login Where user = '"&user&"' And password = '"&password&"'")
If Not RSlogin.EOF Then
Session("inne") = True
end if
if Session("inne") = True then
%>
<%
Response.buffer=True
%>

osv.
Avatar billede Slettet bruger
19. januar 2006 - 01:35 #3
Og inc_settings.asp:

<%
Response.buffer=True
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("db.mdb")
%>
Avatar billede Slettet bruger
19. januar 2006 - 01:38 #4
db.mdb:
Tabellen login:
User: admin
password: admin

Så alting stemmer, så vidt jeg kan se...
Avatar billede softspot Forsker
19. januar 2006 - 02:30 #5
Prøv:

if CBool(Session("inne")) = True then
Avatar billede softspot Forsker
19. januar 2006 - 02:31 #6
Kan dog sagtens give en fejl hvis Session("inne") ikke indeholder en valid boolsk værdi...
Avatar billede Slettet bruger
20. januar 2006 - 22:59 #7
Hmmm... det hjælper desværre ikke. Måske det har noget med serveren (IIS) at gøre?
Avatar billede softspot Forsker
21. januar 2006 - 00:41 #8
Har lige prøvet at rette lidt i din kode og vil bede dig prøve den i stedet for din egen:

<!--#include file="inc_settings.asp" -->
<%
Dim user, password, connect, RSlogin, rsgast
Dim intupdate, rsupdate, strnamn, strurl
Dim stremail, strMeddelande, stranswer, inttabort
Dim sql

on error resume next
Session("inne") = "False"
if err.number <> 0 then
  Response.Write "Fejl under tildeling af Session-variabel: " & err.number & " / " & err.description & "<br>"
  err.clear
end if

user = Request.Form("user")&""
password = Request.Form("password")&""
sql = "Select * " & _
    "From [Login] " & _
    "Where [user] = '"&replace(user,"'","''")&"' " & _
    "And [password] = '"&replace(password,"'","''")&"'"

Response.Write "SQL: " & sql & "<br>"
Set RSlogin = connect.Execute(sql)

if err.number <> 0 then
  Response.Write "Fejl under opslag i databasen: " & err.number & " / " & err.description & "<br>"
  err.clear
else
  If Not RSlogin.EOF Then
    Session("inne") = "True"
  else
    Response.Write "Der fandtes ikke nogen bruger med disse oplysninger.<br>"
  end if
end if

Response.Flush
on error goto 0

if Session("inne") = "True" then
%>


Jeg har lagt nogle ekstra linier fejlhåndtering ind i din kode og så har jeg fjernet den Response.Buffer = True du havde efter din sidste if-sætning, da Response.Buffer, såvidt jeg husker, skal stå før noget som helst output i en ASP-fil - og den står jo allerede i din includefil).

Prøv at kaste ovenstående kode efter din IIS og se (og fortæl) hvad den skriver.

Hvis du bruger en lidt nyere version af Access database, kunne det i øvrigt godt være du skulle udskifte din connectionstring i includefilen med en mere up-to-date version, så det ikke er det der ligger og spøger i kulissen. Du kan f.eks. bruge denne i stedet:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("db.mdb")
Avatar billede Slettet bruger
04. februar 2006 - 23:03 #9
softspot:
Well... jeg har ikke lige haft tid til at chekke koden, men umiddelbart ser den fin ud. :-)
Kast venligst et svar herind, og jeg tildeler dig points.
Avatar billede softspot Forsker
05. februar 2006 - 00:40 #10
Jamen, så får du et svar her :)
Avatar billede Slettet bruger
24. februar 2006 - 23:12 #11
...sorry at jeg har "overset" dig, men jeg har haft ret travlt på det sidste. :-( Det er selvfølgelig ikke personligt ment. Derfor har jeg netop forhøjet points fra 30 til 60, for at understrege dette. :-)

Igen: Tak for hjælpen! :-)
Avatar billede softspot Forsker
25. februar 2006 - 00:33 #12
Det skal du ikke tænke så meget over, jeg har ikke ligefrem siddet og trommet i bordet og ventet på at du gav point, ej heller ligget søvnløs (over det). Jeg regner med at folk tildeler point når de har tid... og det fik du da heldigvis (mest for din egen skyld) :)

Tak for point :)
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