%@ Language=VBScript %> <%Option Explicit%> <% ConnectRSM %> <% dim vSection, vParent dim RightBar RightBar = false CONST ROWS_PER_PAGES = 25 Function MakePageNav() '' URL sans Rows per page dim vRet dim LastPage: LastPage = nbRow \ ROWS_PER_PAGES + 1 dim FirstShow, LastShow if cPage < 6 then FirstShow = 1 if LastPage > 10 then LastShow = 11 else LastShow = LastPage end if elseif cPage > (LastPage - 6) then FirstShow = LastPage - 11 if FirstShow < 1 then FirstShow = 1 LastShow = LastPage else FirstShow = Cpage - 5: LastShow = cPage + 5 end if vRet = "" vRet = vRet & "
" & vbcrlf if LastPage > 1 then if cPage > 1 then if FirstShow > 1 then vRet = vRet & "<<" & vbcrlf end if vRet = vRet & "<" & vbcrlf end if for I = FirstShow to LastShow if I = cPage then vRet = vRet & "" & I & "" & vbcrlf else vRet = vRet & "" & I & "" & vbcrlf end if next if cPage < LastPage then vRet = vRet & ">>" & vbcrlf if LastShow < LastPage then vRet = vRet & ">>" & vbcrlf end if end if end if vRet = vRet & "
" & vbcrlf vRet = vRet & "|
<%
'Page ŕ afficher, si non spécifier -> 1
dim cPage
if IsNumeric(Request.QueryString("p")) and Request.QueryString("p") <> "" then
cPage = cint(Request.QueryString("p"))
else
cPage = 1
end if
dim SearchField
%>
Consultation du bottin
Vous êtes à la recherche d'une résidence. Nous mettons à votre disposition un outil qui vous permettra de trouver ce que vous voulez.
SELECT COUNT(*) FROM (" & strSQL & ")" RSM.Open "SELECT COUNT(*) FROM (" & strSQL & ")", CNRSM dim nbRow: nbRow = RSM.Fields(0) RSM.Close if nbRow = 0 then %> Aucun résultat ne correspond a votre recherche. <%
else
dim PageNav: PageNav = MakePageNav()
Dim vShow
if cPage * ROWS_PER_PAGES > nbRow then
vShow = nbRow - ((cPage - 1) * ROWS_PER_PAGES )
else
vShow = ROWS_PER_PAGES
end if
if (nbRow \ ROWS_PER_PAGES + 1) > 1 then
%>
<%
end if
'construction SQL recordset a afficher selon la page
strSQL = "SELECT TOP " & vShow & " * FROM (" & _
" SELECT TOP " & cPage * ROWS_PER_PAGES & " * FROM (" & strSQL & ") " & _
" ORDER BY 2 ASC) " & _
"ORDER BY 2 DESC "
'Response.Write "" & strSQL RSM.Open strSQL, CNRSM %> <%=PageNav%> Résultats <%=((cPage - 1) * ROWS_PER_PAGES) + 1%> ŕ <%If cPage * ROWS_PER_PAGES > nbRow then Response.Write nbRow _ else Response.Write cPage * ROWS_PER_PAGES%> sur <%=nbRow%>
| |||||||||||||||