---
title: "Poll (omröstning) som inte funkar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/64641-poll-omröstning-som-inte-funkar"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ChiefJoseph"
published: "2003-01-13T08:34:01.000Z"
updated: "2003-01-14T10:55:51.000Z"
replies: 18
views: 384
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/64641-poll-omröstning-som-inte-funkar"
---

# Poll (omröstning) som inte funkar

## #1 — ChiefJoseph, 2003-01-13T08:34Z

Hej!
Jag har använt mig av en omröstning på min sajt och den har funkat utmärkt men har nu flyttat till en ny adress och får då detta felmeddelande, det finns stöd för ASP.

Response-objekt fel 'ASP 0156 : 80004005' 

Fel på huvuden 

/poll/poll.asp, rad 108 

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

Koden är skriven av Åsa Gruvsjö, som för övrigt verkar väldigt duktig.

Här är poll.asp:
\<!--#Include file="settings.asp"--\>

\<!--
\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
Omröstning v2
Åsa Gruvsjö © 2001 
<https://www.gruvsjo.com>  
<Asa@gruvsjo.com>
	
Fri att använda om ni låter copyrightkoden stå kvar!
\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
\--\>

\<%
'############################################################################################################
'----------------------------------------------------SENASTE OMRÖSTNINGEN----------------------------------------------------------------------------------
'############################################################################################################

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db

Storlek = breddF/100

If Request.Querystring("do") = "" Then

   Set RecSet = Conn.Execute("SELECT Top 1 \* From fraga Order by PollId desc")%\>

    \<table border="0" cellpadding="1" cellspacing="1" align="center" width="\<%=Bredd%\>"\>

   \<%If RecSet.EOF Then%\>

      \<tr\>
        \<td colspan="2"\>\<b\>Ingen fråga inlagd\</b\>\</td\>
      \</tr\>
   \<%Else%\>
  \<tr\> 
    \<td colspan="2"\>\<b\>\<%=RecSet("Fraga")%\>\</b\>\</td\>
  \</tr\>

    \<%Set Svar = Conn.Execute("SELECT \* From svar Where pollID="& RecSet("PollId") & " Order By svarnr")

    Set RS = Conn.Execute("SELECT sum(klick) As tot From svar Where pollID="& RecSet("PollId"))
    totalt = RS("tot")

    RS.Close
    Set RS = nothing

    If Svar.EOF Then%\>    
      \<tr\>
        \<td colspan="2"\>\<b\>Inga frågor!\</b\>\</td\>
      \</tr\>
   \<%End If

      Do Until Svar.EOF
        stat     = Svar("klick")
        If stat \<\> 0 Then
           res      = (stat/totalt)\* BreddF / Storlek
        Else
           res = "0"
        End If
       If Request.Cookies(sessionnamn1) = sessionnamn Then%\>
       \<tr\>
          \<td width="\<%=bredd%\>"\>\<%=Svar("svar")%\>\</td\>
          \<td rowspan="2" width="\<%=breddR%\>" valign="bottom" align="right"\>(\<%For i=1 to Len(stat)%\>\<%=Mid(stat,i,1)%\>\<%Next%\>)\</td\>
        \</tr\>
        \<tr\>
          \<td width="\<%=BreddF%\>" bgcolor="#d0d0d0" height="5"\>\<img src="poll/bilder/stapel.gif" width="\<%=Round(res,0)%\>%" height="5" border="1"\>\</td\>
        \</tr\>
       \<%Else%\>
       \<tr\>
          \<td width="\<%=bredd%\>"\>\<a href="\<%=sidan%\>?do=rosta&id=\<%=Svar("id")%\>&val=\<%=Svar("svarnr")%\>"\>\<%=Svar("svar")%\>\</a\>\</td\>
          \<td rowspan="2" width="\<%=breddR%\>" valign="bottom" align="right"\>(\<%For i=1 to Len(stat)%\>\<%=Mid(stat,i,1)%\>\<%Next%\>)\</td\>
        \</tr\>
        \<tr\>
          \<td width="\<%=BreddF%\>" bgcolor="#d0d0d0" height="5"\>\<img src="poll/bilder/stapel.gif" width="\<%=Round(res,0)%\>%" height="5" border="1"\>\</td\>
        \</tr\>
        \<%End If
       Svar.MoveNext
       Loop%\>
        \<tr\>
          \<td colspan="2"\>Antal röster: \<%For i=1 to Len(totalt)%\>\<%=Mid(totalt,i,1)%\>\<%Next%\>\</td\>
        \</tr\>

\<%Svar.Close
Set Svar = nothing

End If%\>

        \<tr\>
          \<td colspan="2"\>\<hr\>\</td\>
        \</tr\>
        \<tr\>
          \<td colspan="2"\>\<a href="\<%=sidan%\>?do=gamla"\>\</a\> &nbsp; &nbsp; \<a href="admin3.asp" target="\_blank"\>Admin\</a\>\</td\>
        \</tr\>
 \</table\>

\<%End If

'############################################################################################################
'----------------------------------------------------KOLLAR OM MAN RÖSTAT-----------------------------------------------------------------------------------
'############################################################################################################

If Request.Querystring("do") = "rosta" Then

If Request.Cookies(sessionnamn1) = sessionnamn then 
  Response.Redirect sidan
Else
  Response.Redirect sidan & "?do=spara&id=" & Request.Querystring("id") & "&val=" & Request.QueryString("val")
End If

End If

'############################################################################################################
'----------------------------------------------------SPARAR RÖSTEN---------------------------------------------------------------------------------------------
'############################################################################################################

If Request.Querystring("do") = "spara" Then
   
Set RecSet = Conn.Execute("Select \* From svar Where id=" & Request.QueryString("id") & " And svarnr=" & Request.QueryString("val"))

Conn.Execute("Update svar Set klick=klick+1 Where id=" & Request.QueryString("id") & " And svarnr=" & Request.QueryString("val"))

Response.Cookies(sessionnamn1) = sessionnamn
Response.Cookies(sessionnamn1).Expires = date + 1
Response.Redirect  sidan & "?id=" & Request.QueryString("id")

End If

'############################################################################################################
'----------------------------------------------------ALLA OMRÖSTNINGAR---------------------------------------------------------------------------------------
'############################################################################################################

If Request.Querystring("do") = "gamla" Then

Set Conn  	= Server.CreateObject("ADODB.Connection")
Conn.Open 	"driver={Microsoft Access Driver (\*.mdb)};dbq=" &Server.MapPath("db/poll.mdb")
SQL = "Select PollId, Fraga From fraga Order By PollId desc"
Set RecSet = Conn.Execute(SQL)

Do Until RecSet.EOF
PollId   = RecSet("PollID")
Fraga	= RecSet("Fraga")%\>

\<table width="\<%=Bredd%\>" cellspacing="1" cellpadding="1" align="center" border="0"\>
  \<tr\> 
    \<td colspan="2"\>\<b\>\<%=Fraga%\>\</b\>\</td\>
  \</tr\>
    
\<%Set RS = Conn.Execute("SELECT sum(klick) As tot From svar Where pollID="& PollId)
  roster = RS("tot")
RS.Close
Set RS = nothing
Set RS = Conn.Execute("Select \* From svar Where PollID = " & PollId &" Order By svarnr")

Do Until RS.EOF
stat     = RS("klick")
If stat \<\> 0 Then
   res      = (stat/roster) \* BreddF / Storlek
Else
   res = "0"
End If%\>
       \<tr\>
          \<td width="\<%=bredd%\>"\>\<%=RS("svar")%\>\</td\>
          \<td rowspan="2" width="\<%=breddR%\>" valign="bottom" align="right"\>(\<%For i=1 to Len(stat)%\>\<%=Mid(stat,i,1)%\>\<%Next%\>)\</td\>
        \</tr\>
        \<tr\>
          \<td width="\<%=BreddF%\>" bgcolor="#d0d0d0" height="5"\>\<img src="poll/bilder/stapel.gif" width="\<%=Round(res,0)%\>%" height="5" border="1"\>\</td\>
        \</tr\>
\<%RS.MoveNext
Loop	
Set RS = nothing%\>
  \<tr\> 
    \<td colspan="2"\>Antal röster: \<%For i=1 to Len(roster)%\>\<%=Mid(roster,i,1)%\>\<%Next%\>\</td\>
  \</tr\>
    \<tr\> 
    \<td colspan="2"\>\<hr\>\</td\>
  \</tr\>

\<%RecSet.MoveNext
Loop
Set RecSet = nothing%\>

    \<tr\> 
    \<td colspan="2"\>\<b\>«\</b\> \<a href="\<%=sidan%\>"\>Tillbaka\</a\>\</td\>
  \</tr\>
\</table\>

\<%End If

Conn.Close
Set Conn = nothing%\>

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

## #2 — LR^evil.sid, 2003-01-13T08:39Z

om du skall redirecta användaren någonstans så måste response.buffer vara satt till true:

```
[red]<% @language=vbscript%>
<%
	option explicit
	[b]response.buffer = true[/b]
%>[/red]
```

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

## #3 — ChiefJoseph, 2003-01-13T08:44Z

Har provat detta! 
Fick rekommendationen av Åsa G. att göra detta men inte heller det funkade. Den kodbiten i toppen är bara tillfälligtvis borta. 

Tack för ditt svar!!

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

## #4 — ChiefJoseph, 2003-01-13T08:45Z

Jag har en liten teori!!
Jag kan ej ASP men förstår en del av logiken.

Kan man på servern ställa in om man skall använda cookies eller ej??? Att det kan ha med detta att göra?

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

## #5 — OveRRidE, 2003-01-13T09:12Z

Har du inte ändrat någon inställning för att avaktivera cookies (vilket jag aldrig har hört talas om på serversidan) så funkar det kanon som standard. Så det är nog inte en del av ditt problem. 

Det är väl den här raden det handlar om va?

```
If Request.Cookies(sessionnamn1) = sessionnamn then
```

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

## #6 — ChiefJoseph, 2003-01-13T09:18Z

Ja, jag vet faktiskt  inte.....faktum är att allt jag gjort är att flytta det från en server till en annan. Jag tror att operativet på servern är NT. Alltså ej 2000.

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

## #7 — LR^evil.sid, 2003-01-14T05:06Z

Jag är fortfarande inne på att det har med response.buffer att göra. Om jag inte misstar mig helt har NT4 response.buffer satt till false som default och 2000 i sin tur buffern till true.

Du är säker på att du inkluderar sidan med response.buffer på den sidan som krånglar?

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

## #8 — @nders, 2003-01-14T05:30Z

> **LR^evil.sid skrev:**
>
> Jag är fortfarande inne på att det har med response.buffer att göra. Om jag inte misstar mig helt har NT4 response.buffer satt till false som default och 2000 i sin tur buffern till true.
> 
> Du är säker på att du inkluderar sidan med response.buffer på den sidan som krånglar?

Jag är mer eller mindre helt säker på att LR^evil.sid har rätt. **Response.buffer = True** skall med, men det skall *absolut överst* på sidan.

Och det är precis som LR^evil.sid säger också att buffer är default false på IIS4 , men true på IIS 5. Det kanske är lite repetition, men jag vill bara understryka att mina erfarenheter säger mig att det är det som är problemet. Been there, done that, liksom.

Mvh

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

## #9 — ChiefJoseph, 2003-01-14T08:33Z

Tack för att ni svarar och intresserar er.
Jag har provat med både och men har kommit framtill att det är på servern problemet ligger.
Rättigheter och ODBC-kopplingar som inte är rätt.....tror jag alltså.
Kan det stämma???

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

## #10 — @nders, 2003-01-14T08:39Z

> **ChiefJoseph skrev:**
>
> Rättigheter och ODBC-kopplingar som inte är rätt.....tror jag alltså.
> Kan det stämma???

Nej, det tror jag inte. Hur ser hela sidan ut, inklusive response.buffer=true?

mvh,

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

## #11 — Engine^, 2003-01-14T08:50Z

Jag har för mig att det där felet (80004005) var uppe för bara några trådar sedan och det var om databaskopplingen, som inte var riktigt som den skulle. Problemet då var att ett password i connectionstring:en inte fungerade.

[Här är tråden](http://www.webforum.nu/showthread.php?s=&postid=529764#post529764)

Om det hjälper dig något vet jag inte, men man kan ju hoppas...

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

## #12 — ChiefJoseph, 2003-01-14T08:56Z

Jag kan ju passa på att nämna att jag har fler asp-script som ej funkar. Statistik, uppdateringsbara nyheter, länkarkiv....samtliga vill ej fungera.

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

## #13 — ChiefJoseph, 2003-01-14T08:58Z

Det är precis samma sida som ovan med enda skillnaden att detta nu ligger i toppen.
\<%Response.Buffer=True%\>

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

## #14 — @nders, 2003-01-14T09:01Z

Är det samma felmeddelande? Spontant tycker jag att detta borde funka:

```
<%@Language=VBScript%><%Response.buffer=true%>
<!--#Include file="settings.asp"--> 

<!-- 
************************************************ 
Omröstning v2 
Åsa Gruvsjö © 2001 
[url]www.gruvsjo.com[/url] 
[email]Asa@gruvsjo.com[/email] 

Fri att använda om ni låter copyrightkoden stå kvar! 
************************************************ 
--> 

<% 
'###########################################################
################################################# 
'----------------------------------------------------SENASTE OMRÖSTNINGEN---------------------------------------------------------------------------------- 
'###########################################################
################################################# 

Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db 

Storlek = breddF/100 

If Request.Querystring("do") = "" Then 

Set RecSet = Conn.Execute("SELECT Top 1 * From fraga Order by PollId desc")%> 

<table border="0" cellpadding="1" cellspacing="1" align="center" width="<%=Bredd%>"> 

<%If RecSet.EOF Then%> 

<tr> 
<td colspan="2"><b>Ingen fråga inlagd</b></td> 
</tr> 
<%Else%> 
<tr> 
<td colspan="2"><b><%=RecSet("Fraga")%></b></td> 
</tr> 

<%Set Svar = Conn.Execute("SELECT * From svar Where pollID="& RecSet("PollId") & " Order By svarnr") 

Set RS = Conn.Execute("SELECT sum(klick) As tot From svar Where pollID="& RecSet("PollId")) 
totalt = RS("tot") 

RS.Close 
Set RS = nothing 

If Svar.EOF Then%> 
<tr> 
<td colspan="2"><b>Inga frågor!</b></td> 
</tr> 
<%End If 

Do Until Svar.EOF 
stat = Svar("klick") 
If stat <> 0 Then 
res = (stat/totalt)* BreddF / Storlek 
Else 
res = "0" 
End If 
If Request.Cookies(sessionnamn1) = sessionnamn Then%> 
<tr> 
<td width="<%=bredd%>"><%=Svar("svar")%></td> 
<td rowspan="2" width="<%=breddR%>" valign="bottom" align="right">(<%For i=1 to Len(stat)%><%=Mid(stat,i,1)%><%Next%> )</td> 
</tr> 
<tr> 
<td width="<%=BreddF%>" bgcolor="#d0d0d0" height="5"><img src="poll/bilder/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td> 
</tr> 
<%Else%> 
<tr> 
<td width="<%=bredd%>"><a href="<%=sidan%>?do=rosta&id=<%=Svar("id")%>&val=<%=Svar("svarnr")%>"><%=Svar("svar")%></a></td> 
<td rowspan="2" width="<%=breddR%>" valign="bottom" align="right">(<%For i=1 to Len(stat)%><%=Mid(stat,i,1)%><%Next%> )</td> 
</tr> 
<tr> 
<td width="<%=BreddF%>" bgcolor="#d0d0d0" height="5"><img src="poll/bilder/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td> 
</tr> 
<%End If 
Svar.MoveNext 
Loop%> 
<tr> 
<td colspan="2">Antal röster: <%For i=1 to Len(totalt)%><%=Mid(totalt,i,1)%><%Next%></td> 
</tr> 

<%Svar.Close 
Set Svar = nothing 

End If%> 

<tr> 
<td colspan="2"><hr></td> 
</tr> 
<tr> 
<td colspan="2"><a href="<%=sidan%>?do=gamla"></a>     <a href="admin3.asp" target="_blank">Admin</a></td> 
</tr> 
</table> 

<%End If 

'###########################################################
################################################# 
'----------------------------------------------------KOLLAR OM MAN RÖSTAT----------------------------------------------------------------------------------- 
'###########################################################
################################################# 

If Request.Querystring("do") = "rosta" Then 

If Request.Cookies(sessionnamn1) = sessionnamn then 
Response.Redirect sidan 
Else 
Response.Redirect sidan & "?do=spara&id=" & Request.Querystring("id") & "&val=" & Request.QueryString("val") 
End If 

End If 

'###########################################################
################################################# 
'----------------------------------------------------SPARAR RÖSTEN--------------------------------------------------------------------------------------------- 
'###########################################################
################################################# 

If Request.Querystring("do") = "spara" Then 

Set RecSet = Conn.Execute("Select * From svar Where id=" & Request.QueryString("id") & " And svarnr=" & Request.QueryString("val")) 

Conn.Execute("Update svar Set klick=klick+1 Where id=" & Request.QueryString("id") & " And svarnr=" & Request.QueryString("val")) 

Response.Cookies(sessionnamn1) = sessionnamn 
Response.Cookies(sessionnamn1).Expires = date + 1 
Response.Redirect sidan & "?id=" & Request.QueryString("id") 

End If 

'###########################################################
################################################# 
'----------------------------------------------------ALLA OMRÖSTNINGAR--------------------------------------------------------------------------------------- 
'###########################################################
################################################# 

If Request.Querystring("do") = "gamla" Then 

Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("db/poll.mdb") 
SQL = "Select PollId, Fraga From fraga Order By PollId desc" 
Set RecSet = Conn.Execute(SQL) 

Do Until RecSet.EOF 
PollId = RecSet("PollID") 
Fraga = RecSet("Fraga")%> 

<table width="<%=Bredd%>" cellspacing="1" cellpadding="1" align="center" border="0"> 
<tr> 
<td colspan="2"><b><%=Fraga%></b></td> 
</tr> 

<%Set RS = Conn.Execute("SELECT sum(klick) As tot From svar Where pollID="& PollId) 
roster = RS("tot") 
RS.Close 
Set RS = nothing 
Set RS = Conn.Execute("Select * From svar Where PollID = " & PollId &" Order By svarnr") 

Do Until RS.EOF 
stat = RS("klick") 
If stat <> 0 Then 
res = (stat/roster) * BreddF / Storlek 
Else 
res = "0" 
End If%> 
<tr> 
<td width="<%=bredd%>"><%=RS("svar")%></td> 
<td rowspan="2" width="<%=breddR%>" valign="bottom" align="right">(<%For i=1 to Len(stat)%><%=Mid(stat,i,1)%><%Next%> )</td> 
</tr> 
<tr> 
<td width="<%=BreddF%>" bgcolor="#d0d0d0" height="5"><img src="poll/bilder/stapel.gif" width="<%=Round(res,0)%>%" height="5" border="1"></td> 
</tr> 
<%RS.MoveNext 
Loop 
Set RS = nothing%> 
<tr> 
<td colspan="2">Antal röster: <%For i=1 to Len(roster)%><%=Mid(roster,i,1)%><%Next%></td> 
</tr> 
<tr> 
<td colspan="2"><hr></td> 
</tr> 

<%RecSet.MoveNext 
Loop 
Set RecSet = nothing%> 

<tr> 
<td colspan="2"><b>«</b> <a href="<%=sidan%>">Tillbaka</a></td> 
</tr> 
</table> 

<%End If 

Conn.Close 
Set Conn = nothing%>
```

Mvh,

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

## #15 — ChiefJoseph, 2003-01-14T09:07Z

Active Server Pages fel 'ASP 0140' 

Ogiltig kommandoordning 

/poll/poll.asp, rad 1 

Kommandot @Language måste vara det första kommandot på Active Server-sidan. 

Får detta felmeddelande när jag försöker köra sidan med poll.

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

## #16 — @nders, 2003-01-14T09:14Z

Inkluderas denna sida i en annan sida?
I så fall måste buffer-instruktionen vara överst i den sidan, och då får du ta bort **\<%@Language=VBScript%\>\<%Response.buffer=true%\>** ur koden på den här sidan igen.

mvh,

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

## #17 — ChiefJoseph, 2003-01-14T09:19Z

Ja det gör den.
Om jag tar bort @lang....så är vi väl tillbaka till samma som förut??

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

## #18 — @nders, 2003-01-14T09:21Z

Ja, men du måste lägga Response.buffer = true i den sida som inkluderar denna. Överst efter \<%@-kommando.

mvh

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

## #19 — ChiefJoseph, 2003-01-14T10:55Z

Tack nu funkar det förutom att det inte går att uppdatera databasen.
En fråga: På en NT server: IIS: Skall jag gå in på webbdelning och dela ut databasen till alla användare? Och vilka rättigheter är det som gäller.....kör, skriv, läs..os.v.

tACKSAM FÖR SVAR

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/64641-poll-omröstning-som-inte-funkar
