Avatar billede peterpeter Seniormester
15. april 2002 - 23:01 Der er 15 kommentarer og
1 løsning

Super hurtigt aften spørgsmål........Hvorfor denne fejlmeddelse ?

Hej Alle

Har lige et problem:

Jeg får denne fejlmeddelse:

Response object error 'ASP 0156 : 80004005'

Header Error

/medlemslogin/godkend.asp, line 54

The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.


Og scriptet ser således ud:

Response object error 'ASP 0156 : 80004005'

Header Error

/medlemslogin/godkend.asp, line 54

The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.


Er der ikke nogen der lige kan hjælpe ??

Tak

Peter
Avatar billede peterpeter Seniormester
15. april 2002 - 23:02 #1
UPS !!

Scriptet ser således ud:

<html>
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK REL="StyleSheet" HREF="default.css" type="text/css">
</head>

<body>
<%
Dim fejl, username, password

fejl = false
brugernavn = Trim(Replace(Request.Form("brugernavn"), "'", "''"))
password = Trim(Replace(Request.Form("password"), "'", "''"))

If brugernavn = "" Then
    Response.Write "<p><font color=red>Indtast venligst dit brugernavn!</p></font>"
    fejl = true
End If

If password = "" Then
    Response.Write "<p><font color=red>Indtast venligst dit password!</p></font>"
    fejl = true
End If

If fejl = true Then
    Response.Write "<p><a href=java script:history.back()>Tilbage</a>"
End If

If fejl <> true Then
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=D:\www\vallunds\log\brugere.mdb;UID=;PWD=;"
Conn.Open DSN
Dim samletAntal


strSQL = "SELECT * FROM brugere WHERE brugernavn='" & brugernavn & "' and Password = '" & password & "'"
Set rs = Conn.Execute(strSQL)

If Not rs.eof Then
          Response.Write "<p><b>Login godkendt!</b>"
        Response.Write "<p>Du er nu logget på som '" & rs("brugernavn") & "'</p>"
          Session("login") = true
        Session("brugernavn") = rs("brugernavn")
        Session("userid") = rs("id")
        Conn.Execute("UPDATE brugere SET sidste_login='" & Now & "' WHERE id=" & Session("userid"))
%>
<p><A href="../hca/artikel-visalle75.asp?sprog='dk'&amp;kat='75'" target=hovedramme onFocus="this.blur()">Til Medlemsside</a></p>       
<%
       
    If request.form("save") = "on" then
        Response.Cookies("Brugere")("brugernavn") = session("brugernavn")
        Response.Cookies("Brugere")("password") = password
        Response.Cookies("Brugere").expires = Date+365 'Information gemmes i cookie i et år, hvis brugeren har valgt at gemme information
    Else   
        Response.Cookies("Brugere").expires = Date-1000 'Information slettes ved at sætte "expires" 1000 dage tilbage, idet brugeren har valgt at slette information
   
    End If
   
       
Else
    Response.Write "<p><font color=red>Du blev ikke logget ind! Du har muligvis indtastet forkert brugernavn eller password!</font></p>"
    Response.Write "<p><a href=java script:history.back()>Tilbage</a></p>"
End If

Conn.Close
Set Conn = Nothing

End If

%>
</body>
</html>
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:06 #2
i toppen af siden (indenfor asp tags) skriv:

response.buffer = true
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:07 #3
dvs. øverste linje på siden, før alt html osv....

<% response.buffer = true %>
Avatar billede killer_r Nybegynder
15. april 2002 - 23:08 #4
Du skal have afviklet cookies inden du begynder at skrive noget til browseren. Det vil sige i dette tilfælde skal du flytte ASP-koden op før det HTML du har i toppen...
Så skulle det vist virke...

/Killer_R
Avatar billede killer_r Nybegynder
15. april 2002 - 23:09 #5
Hvad gør
"response.buffer = true"
egentlig?
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:12 #6
response.buffer gør at der ikke bliver sendt noget html til din browser før en siden er færdig med at blive eksekveret.

true er default på iis5, hvorimod false er default på iis4
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:13 #7
dvs. response.buffer = true gør *det* ... response.false gør at alting bliver sendt tilbage til browseren så snart det er blevet genereret af asp.
Avatar billede killer_r Nybegynder
15. april 2002 - 23:13 #8
Hvad med PWS...?
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:15 #9
false
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:16 #10
fik du det til at fungere?
Avatar billede killer_r Nybegynder
15. april 2002 - 23:20 #11
Ved du så også hvad "Response.flush" gør...?
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:25 #12
når response.buffer = true, kan du bruge response.flush til at sende den html, der er blevet generet indtil videre, tilbage til browseren.

response.clear rydder bufferen - dvs. sletter al den html, der er blevet genereret so far.
Avatar billede peterpeter Seniormester
15. april 2002 - 23:27 #13
PERFEKT !
Avatar billede peterpeter Seniormester
15. april 2002 - 23:32 #14
Lige et kort spørgsmål mere - (Min side er med frames) - Er der en kode man kan skrive således, at man ikke nede i feltet til venstre i browseren kan se hvad det er filerne hedder som man klikker på ??

Peter
Avatar billede kimiwan Nybegynder
15. april 2002 - 23:34 #15
så skal du over i noget javascript..  i dine links skal du skrive sådan her:

<a href="http://blablabla" onMouseOver="window.status='status tekst her';" onMouseOut="window.status='';">link tekst</a>
Avatar billede peterpeter Seniormester
15. april 2002 - 23:45 #16
OK - Jeg havde troet man kunne lave en mere generel kode et eller andet sted, der så gjorde at man ikke kunne se noget nede i vinduet.........

Men OK - Tak for dit svar.

Ha en god aften

Peter
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