---
title: "Få fram antal inlägg mm i nyhetsscript?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10407-få-fram-antal-inlägg-mm-i-nyhetsscript"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Korak"
published: "2001-07-02T14:37:00.000Z"
updated: "2001-07-04T18:38:00.000Z"
replies: 23
views: 308
page: 1
pages: 2
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/10407-få-fram-antal-inlägg-mm-i-nyhetsscript"
---

# Få fram antal inlägg mm i nyhetsscript?

_Sida 1 av 2._

## #1 — Korak, 2001-07-02T14:37Z

Skulle någon kunna hjälpa mig med hur jag ska göra för att få fram "Du är på sid X av X det finns totalt X nyheter inlagda." i detta script:

\<!-- #include file="data.asp" --\>
\<%
dim data, strDB, page, display, include_page, num_items, multi, intCount, show_email, linked_page
if request.querystring("page") = "" then
	page = 1
else
	page = request.querystring("page")
end if

set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
data.source = "SELECT \* FROM admin WHERE id = 1"
data.open
num_items = data("items_per")
display = data("display")
include_page = data("included_page")
multi = data("multi")
show_email = data("show_email")
if data("linked_page") = "none" then
	linked_page = include_page
	else
	linked_page = data("linked_page")
end if
data.close

if request.querystring("id") \<\> "" then
	set data = server.createobject("ADODB.Recordset")
	data.activeconnection = strDB
	data.source = "SELECT \* FROM news WHERE id = " & request.querystring("id")
	data.cursortype = 2
	data.cursorlocation = 3
	data.locktype = 3
	data.open
	if show_email = "yes" then
		show_email = "\</b\> \<a href=""mailto:" & data("author_email") &"""\>" & data("author_email") & "\</a\>\</p\>"
		else
		show_email = ""
	end if
    response.write data("news_date") & "\<br\>"
	response.write "\<b\>" & data("news_title") & "\</b\>\<p\>"
	response.write data("news_text") & "\</p\>\<p\>"
	response.write "\<b\>" & data("news_author") & "\</b\>\<br\>"
    response.write  show_email
	response.write "\<a href=""javascript:history.back()""\>\<\< Tillbaka&nbsp;\</a\>&#0124;&nbsp;"
    response.write "\<a href=""" & include_page & """\>Nyheter\</a\>"

set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB	
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL 
posts = data("antalPoster")
itemNumber = (page-1)\*data.pagesize + intCount
	response.write " Detta är Nyhet \<b\>" & itemNumber & "\</b\> av totalt \<b\>" & posts &"\</b\>"
	show = "no"
end if

if show = "" then
set data = server.createobject("ADODB.RecordSet")
data.activeconnection = strDB
data.source = "SELECT \* FROM news ORDER BY id DESC"
data.cursortype = 3
data.cursorlocation = 3
data.locktype = 3
data.pagesize = num_items
data.open
data.absolutepage = page

intCount = 0
while not data.eof and intCount \< data.pagesize
intCount = intCount + 1
	if display = "A" then
		if show_email = "yes" then
			show_email = "\</b\> \<a href=""mailto:" & data("author_email") &"""\>" & data("author_email") & "\</a\>\</p\>"
			else
			show_email = ""
		end if
		response.write "\<font size=""4""\>\<b\>" & data("news_title") & "\</font\>\</b\>  " & data("news_date") & "\<br\>"
		response.write "\<font size=""2""\>" & data("news_text") & "\</font\>\<br\>\<br\>"
		response.write "Skrivet av: \<b\>" & data("news_author") & show_email
		response.write "\<hr\>"
	end if
	if display = "B" then
		response.write data("news_date") & "\<br\>"
		response.write "\<a href=""" & linked_page & "?id=" & data("id") & """\>" & data("news_title") & "\</a\>\<br\>\<br\>"
	end if
	if display = "C" then
		response.write "\<br\>\<a href=""" & linked_page & "?id=" & data("id") & """\>" & data("news_title") & "\</a\>\<br\>"
		response.write "\<font size=""2""\>" & left(data("news_text"), 40) & "...\</font\>\<br\>"
	end if
	data.movenext
wend

response.write "\<br\>\<br\>"

if multi = "yes" then
if page \> 1 then
response.write " \<a href=""" & include_page & "?page="& page - 1 & """\>\<\< Tillbaka \</a\>&#0124; "
end if
end if
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL 
posts = data("antalPoster")

totalPages = int((posts-1)/num_items + 1)
response.write "Sid \<b\>"& page &"\</b\> av \<b\>"& totalPages &"\</b\> &#0124; "

if multi = "yes" then
if not data.eof then
response.write "\<a href=""" & include_page & "?page="& page + 1 & """\>Nästa \>\>\</a\>" & " &nbsp; Det finns \<b\>" & posts & "\</b\>" & " Nyheter totalt."
end if
end if
data.close
end if
%\>

Tack på förhand!
//Korak

\[Redigerat av Korak den 04 jul 2001\]

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

## #2 — emission, 2001-07-02T15:13Z

<http://cgi.webforum.nu/wf/arkiv/asp_faq.html#paging>

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

## #3 — Eclipse, 2001-07-03T07:33Z

'## COUNT ALL POSTS
SQL = "SELECT COUNT(\*) AS cnt FROM \[news\]"
set mySQL = Conn.Execute(SQL)
antal = mySQL("cnt")

' ## PRINT
response.write "Det finns " & antal & " nyheter."

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

## #4 — Korak, 2001-07-03T08:34Z

Hmmm...funkade inte.
Jag har försökt som en galning, känns som jag prövat allt. 
Min senaste variant som självklart inte funkade:

'## COUNT ALL POSTS
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open
' ## PRINT
Response.Write "Antal nyheter: \<b\>" & data("antalPoster") & "\</b\>"
data.close

Får detta felmeddelande:

Microsoft JET Database Engine error '80040e0c' 

Command text was not set for the command object. 

/nyheter/show_news.asp, line 107 

//Korak

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

## #5 — LarsG, 2001-07-03T09:38Z

```
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open [b] SQL [/b]
' ## PRINT
Response.Write "Antal nyheter: <b>" & data("antalPoster") & "</b>"
data.close
```

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

## #6 — Korak, 2001-07-03T10:03Z

Äntligen :)
Glädje.
Tack så mycket för hjälpen LarsG!

//Korak

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

## #7 — Korak, 2001-07-03T11:04Z

En sista fråga i ämnet.
Jag har lyckats få fram vilken sidan besökaren är på med denna kod:

response.write "Sid \<b\>"& page &"\</b\> av \<b\>"& count &"\</b\>

Det som jag inte får till är det totala antalet sidor (där det nu står count).
Någon som skulle kunna vara vänlig att hjälpa mig med detta?

Tack på förhand!
//Korak

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

## #8 — LarsG, 2001-07-03T11:34Z

Om antalet psoter per sida är pageSize så kan du räkna ut antalet sidor så här

```

items = data("antalPoster")
totalPages = (items-1)/pageSize + 1
```

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

## #9 — Korak, 2001-07-03T23:35Z

Känns nästan lite pinsamt att fråga igen men det känns som jag verkligen försökt allt. Jag har fått till allt som jag vill ha det nu utom grejen att visa hur många sidor det finns totalt.
Såhär ser nu slutet av koden jag postade tidigare ut:

if multi = "yes" then
	if page \> 1 then
		response.write "    \<a href=""" & include_page & "?page="& page - 1 & """\>\<\< Tillbaka&nbsp;\</a\>&#0124;&nbsp;"
	end if
end if

        response.write "Sid \<b\>"& page &"\</b\> av \<b\>"& HÄR\_ÄR_DET_KÖRT &"\</b\>&nbsp;&#0124;&nbsp;"

if multi = "yes" then
	if not data.eof then
		response.write "\<a href=""" & include_page & "?page="& page + 1 & """\>Nästa \>\>\</a\>" 
	end if
end if
data.close
end if
%\>
\<%
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL 
' ## PRINT
Response.Write "&nbsp; Antal nyheter: \<b\>" & data("antalPoster") & "\</b\>\<br\>"  
data.close
%\>

Vore jätteglad om någon skulle kunna tipsa mig om hur jag ska göra. 
Och ja, jag lovar, jag ska köpa "Asp for dummies", "Lär dig asp på 3 veckor" mm :)

//Korak

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

## #10 — LarsG, 2001-07-04T10:22Z

Jag flyttade om lite kod. Sen så förutsätter jag att du har en variabel som heter num_items som anger hur många poster du visar per sida

```
if multi = "yes" then
if page > 1 then
response.write " <a href=""" & include_page & "?page="& page - 1 & """><< Tillbaka </a>&#0124; "
end if
end if
set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL 
posts = data("antalPoster")
data.close

'# num_items är antal poster som visas per sida

totalPages = (posts-1)/num_items + 1
response.write "Sid <b>"& page &"</b> av <b>"& totalPages &"</b> &#0124; "

if multi = "yes" then
if not data.eof then
response.write "<a href=""" & include_page & "?page="& page + 1 & """>Nästa >></a>" 
end if
end if
data.close
end if
%>
<%

' ## PRINT
Response.Write "  Antal nyheter: <b>" & posts & "</b><br>" 
%>
```

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

## #11 — Korak, 2001-07-04T10:50Z

Jag har för mig att jag testade något liknande. Jag får fram detta felmeddelande:

Sid 1 av 3.16666666666667 &#0124; 
ADODB.Recordset error '800a0e78' 

Operation is not allowed when the object is closed. 

/nyheter/show_news.asp, line 104 

Detta är rad 104:
if not data.eof then

Det känns ju som det är så nära att funka...jag fattar inte.

//Korak

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

## #12 — @nders, 2001-07-04T10:58Z

och om du tar bort raden **data.close**?

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

## #13 — Korak, 2001-07-04T11:12Z

Nu är det mycket, mycket nära  :)
Jag tog bort data close i raden som låg över denna:
'# num_items är antal poster som visas per sida

Nu funkar allt förrutom att det istället för att stå "Sid 1 av 3" står "Sid 1 av 3.16666666666667"
Förslag?

//Korak

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

## #14 — @nders, 2001-07-04T11:14Z

det borde väl vara sidan 1/4???

prova att slänga **int()** runt totala antalet sidor.

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

## #15 — Korak, 2001-07-04T11:32Z

Nej det är Sid 1 av 3 som det ska vara. Jag har sex inlägg på varje sida. Jag prövade att skriva in 2 nya inlägg. Då ändrades det till Sid 1 av 3,5
Nu är det totalt 16 inlägg.

Vet inte om jag förstod vad du menade riktigt @nders. Jag prövade att ta bort alla int i koden...ingen skillnad. Sedan prövade jag att ta bort parantesen runt (posts-1)...ingen skillnad. Var det något av de alternativen du menade?

//Korak

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

## #16 — LarsG, 2001-07-04T11:40Z

```
totalPages = int((posts-1)/num_items + 1)
```

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

## #17 — @nders, 2001-07-04T11:47Z

åh jäklarns vilken missufattning!

förlåt mig, korak, jag skulle givetvis gett kodexempel såsom LarsG gjorde.

sorry! :)

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

## #18 — Korak, 2001-07-04T11:52Z

Jiipppiiiieeeeee!!! :e 
Äntligen...glädje. 
Tack så hemskt mycket för hjälpen!

//Korak

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

## #19 — Korak, 2001-07-04T11:59Z

Du behöver verkligen inte be om ursäkt @nders :)
Jag blir så otroligt glad över att det finns så många underbara människor som vill hjälpa till. 

//Korak

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

## #20 — Korak, 2001-07-04T15:34Z

En sista gång jag lovar  :)
Försöker få fram vilket nummer i ordningen varje inlägg har. Har klurat fram och tillbaka men som vanligt inte lyckats. Nu ser det ut såhär:

set data = server.createobject("ADODB.Recordset")
data.activeconnection = strDB	
SQL = "SELECT COUNT (id) AS antalPoster FROM news"
data.open SQL 
posts = data("antalPoster")

	response.write " Detta är Nyhet \<b\>" & id & "\</b\> av totalt \<b\>" & posts &"\</b\>"
	show = "no"
end if

Nu syns det ingenting där "id" står. 
Nån känner sig sugen att komma med ett tips?

//Korak

\[Redigerat av Korak den 04 jul 2001\]

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/10407-få-fram-antal-inlägg-mm-i-nyhetsscript  
Nästa sida: https://www.webforum.nu/amne/asp/10407-få-fram-antal-inlägg-mm-i-nyhetsscript/page2.md
