---
title: "Forumproblem!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/11315-forumproblem"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ampy"
published: "2001-08-26T15:21:00.000Z"
updated: "2001-08-27T18:42:00.000Z"
replies: 17
views: 325
page: 1
pages: 1
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/11315-forumproblem"
---

# Forumproblem!

## #1 — ampy, 2001-08-26T15:21Z

Jag har laddat ner ett forum från sidan ricki.nu.

När man ska skriva ett meddelande och sedan ska "posta" det kommer detta felmeddelande fram:

Response-objekt fel 'ASP 0156 : 80004005' 

Fel på huvuden 

/forum/post.asp, rad 32 

HTTP-huvudena har redan skrivits till klientläsaren. Ändringar till HTTP-huvudena måste göras innan sidinnehållet skrivs. 

Och så här ser hela post.asp ut:

\<!--#include file="settings.inc"--\>

\<html\>
\<head\>
\<title\>Forum v1.0\</title\>

\</head\>
\<body bgcolor="\<%=bgcolor%\>"\>

	\<%
	Set Connection = Server.CreateObject("ADODB.Connection")
	Connection.Open "Driver={Microsoft Access Driver (\*.mdb)}; DBQ=" & Server.MapPath("forum.mdb") & ";pwd=;"

		Subject		= Request.Form("subject")
		Body		= Request.Form("body")
		DateTime	= Now
		By		= Request.Form("namn")
		ByEmail		= Request.Form("epost")
		Children	= Request.Querystring("answer")
		Answers		= 0

	SQL="INSERT INTO forum (\[Children\], \[Subject\], \[Body\], \[DateTime\], \[By\], \[ByEmail\], \[Answers\]) VALUES(" & Children & ", '" & Subject & "', '" & Body & "', #" & DateTime & "#, '" & By & "', '" & ByEmail & "', " & Answers & ")"
	Connection.Execute(SQL)

	If Children\<\>0 Then
		PARENT="UPDATE forum SET Answers=Answers+1 WHERE Parent=" & Children
		Connection.Execute(PARENT)
	End If

	Connection.Close

	Response.Redirect "default.asp"
	%\>

\</body\>
\</html\>

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

## #2 — @nders, 2001-08-26T15:22Z

allra högst upp i asp-filen:

```
response.buffer=true
```

mvh,

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

## #3 — ampy, 2001-08-26T15:25Z

det funkar fortfarande inte

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

## #4 — @nders, 2001-08-26T15:29Z

kodraden måste ligga som den första rad som exeveras, dvs direkt under ev. \<%@-tagg.

är det där du lagt den?

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

## #5 — ampy, 2001-08-26T15:31Z

jag hade inte gjort det innan men nu testade jag men det funkar fortfarande inte :(

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

## #6 — ampy, 2001-08-26T15:34Z

jag kom på en sak.

När jag laddade om själva forumstartsidan (default.asp) fanns meddelanderna där. Det funkar men det kommer alltså upp ett felmeddelande.

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

## #7 — @nders, 2001-08-26T15:39Z

jodå. vilken rad är det fel på?

den med response.redirect skulle jag tippa på.

borde helt klart funkalera med response.buffer=true högst upp.

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

## #8 — ampy, 2001-08-26T15:45Z

jag testade att ta bort Response.Redirect "default.asp".

Då kom bara en vit sida upp så det måste vara något fel på den raden...

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

## #9 — @nders, 2001-08-26T15:51Z

hur ser hela ditt asp-dokument ut, med response.buffer-raden, och response.redirect-raden?

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

## #10 — ampy, 2001-08-26T15:56Z

hur menar du?

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

## #11 — @nders, 2001-08-26T16:07Z

i din editor, notepad eller vilken du nu använder, markera all text. kopiera. klistra in här.

annars kan du ersätta (when all else fails):

```
Response.Redirect "default.asp"
```

med

```
Response.Write "<scr" & "ipt>location.href='default.asp';</scr" & "ipt>"
```

mvh,

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

## #12 — ampy, 2001-08-26T16:11Z

JAG MENAR VILKEN FIL JAG SKA KOPIERA?

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

## #13 — webzonen, 2001-08-26T16:49Z

Skikca in koden på hela den felande sidan.

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

## #14 — Scarabus, 2001-08-27T07:55Z

Men!!
Response.redirect funkar inte om sidhuvudena redan skrivits! Detta innebär att du inte får lägga in \<html\> eller \<!DOCTYPE\>taggar ovanför en redirect-rad! Flytta bara upp scriptet till överst på sidan.

response.buffer=true skriver man överst på filen när man ska jobba med cookies, btw.

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

## #15 — @nders, 2001-08-27T08:00Z

> response.buffer=true skriver man överst på filen när man ska jobba med cookies, btw.

eller när man vill kunna göra en redirect var som helst i koden. det gör nämligen så att asp-tolken buffrar hela sidan tills den är färdigexekverad och skickar sedan hela faderullan till browsern. så länge ingenting är skickat till läsaren så kan man modifiera http-headers, dvs, redirects, cookies, ändra contenttype, m.m.

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

## #16 — mikul, 2001-08-27T08:26Z

alltså skriv så här längst upp...
\<% Response.Buffer = True %\>

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

## #17 — Eclipse, 2001-08-27T12:34Z

Koden ovan är fel.

Ta bort **ALL** html kod från sidan så fungerar det. Drt är det som är HTTP-huvudet, liksom!

```
<!--#include file="settings.inc"-->
<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("forum.mdb") & ";pwd=;"

Subject = Request.Form("subject")
Body = Request.Form("body")
DateTime = Now
By = Request.Form("namn")
ByEmail = Request.Form("epost")
Children = Request.Querystring("answer")
Answers = 0

SQL="INSERT INTO forum ([Children], [Subject], [Body], [DateTime], [By], [ByEmail], [Answers]) VALUES(" & Children & ", '" & Subject & "', '" & Body & "', #" & DateTime & "#, '" & By & "', '" & ByEmail & "', " & Answers & ")"
Connection.Execute(SQL)

If Children<>0 Then
PARENT="UPDATE forum SET Answers=Answers+1 WHERE Parent=" & Children
Connection.Execute(PARENT)
End If

Connection.Close

Response.Redirect "default.asp"
%>
```

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

## #18 — Bengan, 2001-08-27T18:42Z

> Koden ovan är fel.
> Ta bort ALL html kod från sidan så fungerar det. Drt är det som är HTTP-huvudet, liksom!

Ursäkta men är ovan ett skämt? :)

Lyssna på @nders mfl. lägg in

```
<% Response.Buffer = True %>
```

högst upp på sidan precis under ev rad med ett @ tecken i så fixar det sig. Sen kan du köra kod var du vill i filen inklusive redirect, addheader osv. 
På IIS5 är Response.Buffer = True dock standard så då slipper man bry sig.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/11315-forumproblem
