Avatar billede musti776 Nybegynder
13. marts 2005 - 13:59 Der er 3 kommentarer og
1 løsning

paging - hvor jeg vil indsætte "if"

Hej

Jeg har noget paging på siden hvor det bliver opstillet på denne måde..

Gå til side 1 2 3 osv...
Men teksten "Gå til side" bliver vist uanset om der er post eller ej..
Den har jeg så prøvet at fjerne ved at skrive

'Paging scriptet
If (rs.BOF Or rs.EOF) Then
response.Write "Ingen post :)"
else
Response.Write "Gå til side "
For intNum = 1 To intPageCount
Response.Write "<a href='main.asp?fid=" &  "&page=" & intNum &  "'>" & intNum & "</a> "
end if
next

men den melder fejl
hvad skal jeg gøre ?
<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "select * from tabel where forside = 1"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../db/db.mdb")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 8
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
'</paging> 
%>

<center>
<%   
noPrRow = 0
maxPrRow = 4
response.write "<table cellspacing=""40"">"
Do While Not rs.EOF And intRecCount > 0
  if noPrRow = 0 then response.write "<tr align=center>"
  response.write "<td width=""120"" height=""120"" valign=""top"" align=""center"" bgcolor=""#F1F5DC"" class=""main"">"
  'Udskriv data her
Response.write  "<a href=""produkter.asp?id=" & rs("id") & """ target=""indhold""><img src=""../produkt_images_small_gr/" & rs("images1") & """ width=""120"" height=""120"" border=""0"">  " & rs("navn") & " </a> <br> " & rs("kort_beskrivelse") & "<br> <strong> <font size=2> " & rs("pris")&" "
  response.Write "<br>"
  response.Write " <a href=""produkter.asp?id=" & rs("id") & """ target=""indhold""><img src=""../images/viewgg.gif"" heigt=""17"" width=""47"" border=""0"">  </a>"
  response.write "</td>"
  noPrRow = noPrRow + 1
  if noPrRow = maxPrRow then
    response.write "</tr>"
    noPrRow = 0
  end if
intRecCount = intRecCount - 1
  rs.Movenext
loop
if noPrRow > 0 then response.write "</tr>"
response.write "</table>"
'Hvis ikke recordsettet er tomt, fortsæt
%>



<%   
'Trækker den næste record ud og lukker din forbindelse

' intRecCount = intRecCount - 1

End If
rs.Close
Set rs = Nothing

'Paging scriptet

Response.Write "Gå til side "
For intNum = 1 To intPageCount
Response.Write "<a href='main.asp?fid=" &  "&page=" & intNum &  "'>" & intNum & "</a> "

next
%>

</center>
Avatar billede cpufan Juniormester
13. marts 2005 - 14:11 #1
det er fordi dit recordsæt er lukket.

du kan inden du lukker forbindelsen sætte en variabel, hvis rs.eof eller rs.bof
og så teste på den i din paging.
pagtom = 0
If (rs.BOF Or rs.EOF) Then
pagtom = 1
end if

if (pagtom = 0) then

din paging

end if
Avatar billede musti776 Nybegynder
13. marts 2005 - 14:21 #2
det virker udmærket :)
men lige inden jeg lukker spg kunne du måske også lige svare på et tillægsspørgsmål :)

jeg henter 8 post pr side.. Hvad hvis jeg ikke vil have at teksten "Gå til side" ikke skal komme frem hvis der er mindre en de 8 post men kun når der er flere end 8? :)
Avatar billede cpufan Juniormester
13. marts 2005 - 14:30 #3
if (pagtom = 0) AND (intPageCount > 1) then
Avatar billede musti776 Nybegynder
13. marts 2005 - 15:53 #4
super super super
tak for hjælpen :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester