19. januar 2006 - 01:18Der 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.
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)...
Synes godt om
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 %>
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
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:
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.
...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. :-)
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 :)
Synes godt om
Ny brugerNybegynder
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.