webForumDet fria alternativet
Logga in / Bli medlem

Paging med mysql

Databaser & SQL

11 svar · 285 visningar · startad av Wiklund!!

Medlem sedan juli 2002549 inlägg
Trådstart#1

Har sökt lite här på wF och fått lite svar. Det konstiga är att alla utom jag verkar få det att fungera.

Här är min kod:

<!-- #include file="db.asp" -->

<%
pageSize = 2
page = requets.querystring("page")
if page = "" then page = 1

sql = "select count(*) from sitenews"

'behövs för att beräkna antal sidor
pages = (rs(0)-1)/pageSize + 1

SQL = "select users.*, sitenews.* from users inner join sitenews on users.id = sitenews.fromid  ORDER by sitenews.id DESC"
rs.Open SQL, Connect, 1, 2

Do until rs.eof

response.write rs("namn")

rs.MoveNext
Loop
rs.close

if  page > 1 then
    response.write "<a href='paging.asp?page=" & page - 1 & "'>Bakåt </a>"
end if

if page < pages then
response.write "<a href=paging.asp?page=" & page + 1 & ">Framåt </a>"
end if
%>
Medlem sedan juni 200032 967 inlägg
#2

I vanlig ordning: Vad är det som inte fungerar?
Felmeddelande?

Medlem sedan juni 200032 967 inlägg
#3

Jag hittade massor av skoj när jag sökte på paging AND mysql, bl.a. helt färdiga script. Gör den sökningen du också om du inte gjort det.

Mvh

Medlem sedan dec. 200012 464 inlägg
#4
sql = "select count(*) from sitenews"

'behövs för att beräkna antal sidor
pages = (rs(0)-1)/pageSize + 1

Och var skapas rs då?

Medlem sedan juli 2002549 inlägg
#5

Har sökt en hel del. Men får inget av koderna att fungera.

Felmess:
Feltyp:
Microsoft VBScript runtime (0x800A01A8)
Object required: ''
/es/default2.asp, line 341

rad 341: pageSize = 2

LarsG: Jag har skapat rs i include filen db.

Medlem sedan juni 200032 967 inlägg
#6

Är du säker på att det är rätt rad du anger? Tilldelningen av den variabeln borde inte kunna generera ett sådant fel.

Kika på detta inlägget för att få lite idéer.

Medlem sedan dec. 200012 464 inlägg
#7

Det kanske skapas men jag ser inte att du utför din select count(*) någonstans.

Medlem sedan juli 2002549 inlägg
#8

Så här ser min kod ut nu.

pageSize = 10
page = requets.querystring("page")
if page = "" then page = 1

sql = "select count(*) from sitenews" 

'behövs för att beräkna antal sidor
set rs = connect.execute(SQL)
pages = (rs(0)-1)/pageSize + 1

SQL = "select users.*, sitenews.* from users inner join sitenews on users.id = sitenews.fromid  ORDER by sitenews.id DESC"
rs.Open SQL, Connect, 1, 2

Han hakar fortfarande upp sig på raden: pageSize = 2

Medlem sedan dec. 200012 464 inlägg
#9

Felstavat

page = requets.querystring("page")
Medlem sedan juli 2002549 inlägg
#10

Ska man skratta eller gråta? :)
Tack så mkt, har fått paging delen att fungera nu!

Har dock problem med denna kod:

pages = (rs(0)-1)/pageSize + 1

Om man har PageSize = 10 och 9 poster i recordsettet borde pages vara 1. Men istället när jag kör koden visar den 1.8. Går detta och lösa?

Medlem sedan dec. 200012 464 inlägg
#11
pages = clng(rs(0)-1)\pageSize + 1
Medlem sedan juli 2002549 inlägg
#12

Du är en ängel!! Tusen tack.

edit: gay varning på mig men skit samma.

258 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)