webForumDet fria alternativet

värden mellan properties i class

ASP

1 svar · 158 visningar · startad av LR^evil.sid

Medlem sedan maj 2002560 inlägg
Frågan#1

Hejsan! Jag sitter och pysslar med en paginclass och har stött på ett för mig obegriplit problem. Vissa variabler, eller alla, det vet jag inte är liksom inte där i classen. Jag kan skriva ut propertyn men inte använda den i själva classen.

Koden, om det har någon betydelse, kommer i den ordningen jag skrivit här.

I clsPagin.asp

[red]Public Property Let PageSize(n_IntPageSize)
	c_PageSize = n_IntPageSize
End Property
Public Property Get PageSize()
	PageSize = c_PageSize
End Property[/red]

[blue]Public Property Let CurrentPage(n_IntCurrentPage)
	c_CurrentPage = n_IntCurrentPage
	If Not IsNumeric(n_IntCurrentPage) Then c_CurrentPage = 1
	If Int(n_IntCurrentPage) > TotalPosts() Then c_CurrentPage = TotalPosts()
	If Int(n_IntCurrentPage) < 1 Then c_CurrentPage = 1
End Property
Public Property Get CurrentPage()
	CurrentPage = c_CurrentPage
End Property[/blue]

[red]Public Property Let SQL(n_StrSQL)
	c_SQL = n_StrSQL
	c_SQL = c_SQL & " limit "&((c_PageSize * c_CurrentPage) - c_PageSize)&", "&c_PageSize
End Property
Public Property Get SQL()
	SQL = c_SQL
End Property[/red]

[blue]Public Sub InitConnection()
	Set ODB = Server.CreateObject("ADODB.Connection")
	ODB.Open(Connection)
End Sub[/blue]

I pagin.asp

[red]cPagin.InitConnection()
cPagin.SQL = "select id, usr from pagin order by id asc"
cPagin.PageSize = 6
cPagin.CurrentPage = Trim(Request.QueryString("page"))[/red]
[blue]Response.Write cPagin.SQL & "<br>"
Response.Write cPagin.CurrentPage & "<br>"
Response.Write cPagin.PageSize & "<br>"[/blue]

Och detta ger:

select id, usr from pagin order by id asc limit 0, [b]Här borde PageSize så med det gör det inte![/b]
1
6

Vilket blir en felaktig sql-fråga i och med att limit inte vet hur många poster som skall hämtas.

Medlem sedan jan. 20032 285 inlägg
#2

Borde det inte stå i den här ordningen?

cPagin.InitConnection()
cPagin.PageSize = 6
cPagin.CurrentPage = Trim(Request.QueryString("page"))
cPagin.SQL = "select id, usr from pagin order by id asc"
270 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
146 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)