webForumDet fria alternativet

Paging med mysql

11 svar · 284 visningar · startad av Wiklund!!

Wiklund!!Medlem sedan juli 2002549 inlägg
#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
%>
@ndersMedlem sedan juni 200032 969 inlägg
#2

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

@ndersMedlem sedan juni 200032 969 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

LarsGMedlem 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å?

Wiklund!!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.

@ndersMedlem sedan juni 200032 969 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.

LarsGMedlem sedan dec. 200012 464 inlägg
#7

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

Wiklund!!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

LarsGMedlem sedan dec. 200012 464 inlägg
#9

Felstavat

page = requets.querystring("page")
Wiklund!!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?

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

Du är en ängel!! Tusen tack.

edit: gay varning på mig men skit samma.

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)