<html>
<font size=3>Here one I wrote in two parts. The first one does all the
calculations to give you all the info you need to display Prev page and
Next page buttons in any format you like: (note: I replaced the <>
with [] because my mail program always messes up display of any HTML-like
tags.<br>
<br>
</font><font face="Courier New, Courier" size=2><!---<br>
// Module qpager.cfm<br>
// Peter Theobald 8/10/2000<br>
// [EMAIL PROTECTED]<br>
// Calculate numbers for paged query data<br>
//<br>
// Usage:<br>
// set qpager=StructNew()<br>
// set qpager.startrow (def: 1), qpager.maxrows (def: 10),
qpager.numrecords (req.)<br>
// <cfinclude template="qpager.cfm"><br>
//<br>
// Outputs: qpager.prevstart, qpager.nextstart,<br>
//<x-tab> </x-tab> qpager.numpages,
qpager.thispage, qpager.endrow<br>
---><br>
<br>
<br>
[cfscript]<br>
if (NOT IsDefined("qpager.recordcount"))
qpager.recordcount=1;<br>
if (NOT IsDefined("qpager.startrow"))
qpager.startrow=1;<br>
if (NOT IsDefined("qpager.maxrows"))
qpager.maxrows=10;<br>
// Why can't CF be zero based like any sane language?<br>
qpager.numpages = (qpager.recordcount-1)\qpager.maxrows +1;<br>
qpager.thispage = (qpager.startrow-1)\qpager.maxrows +1;<br>
qpager.prevstart = ((qpager.startrow-2)\qpager.maxrows)<br>
<x-tab> </x-tab>*
qpager.maxrows +1;<br>
if (qpager.prevstart LT 0) qpager.prevstart = 1;<br>
qpager.endrow = qpager.startrow+qpager.maxrows -1;<br>
if (qpager.endrow GT qpager.recordcount)<br>
<x-tab> </x-tab>qpager.endrow
= qpager.recordcount;<br>
qpager.nextstart = qpager.startrow+qpager.maxrows;<br>
if (qpager.nextstart GT qpager.recordcount)<br>
<x-tab> </x-tab>qpager.nextstart
= qpager.startrow;<br>
[/cfscript]<br>
<br>
<br>
</font><font size=3>Now you can use
</font><font face="Courier New, Courier" size=2>qpager.startrow,
qpager.maxrows, qpager.numrecords, qpager.prevstart, qpager.nextstart,
qpager.numpages, qpager.thispage, qpager.endrow<br>
<br>
</font><font size=3>To do any style you like. For example: (remember to
replace all [ with < in my example)<br>
<br>
</font><font face="Courier New, Courier" size=2><!---<br>
// dsp_qpager.cfm<br>
// Peter Theobald<br>
// Display query page controls. All links point back to the same
page.<br>
// Must be preceeded by fn_qpager.cfm<br>
//<br>
---><br>
[cfoutput><br>
[form name="dsp_qpager_form"
action="#CGI.SCRIPT_NAME#" method=post><br>
[input type=hidden name="startrow"
value="#qpager.startrow#"><br>
[input type=hidden name="sortby"
value="#sortby#"><br>
[div align=right><br>
View [select name="maxrows"
onChange="document.dsp_qpager_form.submit();"><br>
[option value="10" [cfif qpager.maxrows EQ
10>SELECTED</CFIF>>10[/option><br>
[option value="30" [cfif qpager.maxrows EQ
30>SELECTED</CFIF>>30[/option><br>
[option value="50" [cfif qpager.maxrows EQ
50>SELECTED</CFIF>>50[/option><br>
[option value="100" [cfif qpager.maxrows EQ
100>SELECTED</CFIF>>100[/option><br>
[option value="500" [cfif qpager.maxrows EQ
500>SELECTED</CFIF>>500[/option><br>
[/select> per page[/div>[/form><br>
[cfif qpager.numpages GT 1><br>
[div align=right>Viewing #qpager.startrow# - #qpager.endrow# of
#qpager.recordcount# &nbsp;&nbsp; <a
href="#CGI.SCRIPT_NAME#?startrow=#qpager.prevstart#&maxrows=#qpager.maxrows#&sortby=#sortby#">PREV</a>
[a
href="#CGI.SCRIPT_NAME#?startrow=#qpager.nextstart#&maxrows=#qpager.maxrows#&sortby=#sortby#">NEXT</a>[/div><br>
[/cfif><br>
[/cfoutput><br>
<br>
</font><font size=3>At 11:34 AM 8/24/00 +0100, Neil Middleton
wrote:<br>
<blockquote type=cite cite>All,<br>
<br>
Do any of you lot know of any custom tags that will build the
[1-10][11-20]<br>
style navigation at the bottom of a long list of results, the sort of
thing<br>
that appears a LOT on search engines?<br>
--<br>
Neil Middleton<br>
Technical Director<br>
Stez Media<br>
<br>
<br>
Neil Middleton studied ancient Greek and Roman warfare with the aim of
world<br>
domination.<br>
He's now a ColdFusion programmer.<br>
<br>
------------------------------------------------------------------------------<br>
Archives:
<a href="http://www.mail-archive.com/[email protected]/"
eudora="autourl">http://www.mail-archive.com/[email protected]/</a><br>
To Unsubscribe visit
<a href="http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk"
eudora="autourl">http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk</a>
or send a message to [EMAIL PROTECTED] with 'unsubscribe' in the body.
</font></blockquote><br>
<br>
-<font
size=3>--------------------------------------------------------------------------<br>
Peter Theobald, Chief Technology Officer<br>
LiquidStreaming <a href="http://www.liquidstreaming.com/"
eudora="autourl">http://www.liquidstreaming.com</a><br>
[EMAIL PROTECTED]<br>
Phone 1.212.545.1232 Fax 1.212.679.8032<br>
</font></html>
------------------------------------------------------------------------------
Archives: http://www.mail-archive.com/[email protected]/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or send a
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.