dorwin
06-15-2005, 10:14 PM
I've been trying to page through some reords. The records display on the first page but when you select page 2 there is nothing there but "My first IF statement, but the url points to page 2. Here is my code below.
<SCRIPT language="JavaScript">
function getFilter(listitem){
var object = "";
var listValue = getListValue(listitem);
document.formCategory.submit(listValue);
}
function getListValue(list){
var listValue="";
if (list.selectedIndex != -1) {
listValue = list.options[list.selectedIndex].value;
}
return (listValue);
}
</SCRIPT>
<%
ConnString = "DSN=ixllot"
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open ConnString,,,adOpenForwardOnly
Set rs = Server.CreateObject("ADODB.Recordset")
' first have to get the category records to fill the drop down....
' Set SQL statement
strSQL = "SELECT DISTINCT prod_manufacturer FROM products ORDER BY prod_manufacturer"
' Open Recordset Object
rs.Open strSQL,conn, adOpenStatic
%>
<FORM name="formCategory">
<SELECT NAME="qryCategory" size="1" onChange="getFilter(this.form.qryCategory)" class="tablecategory">
<OPTION selected>Select A Category:
<% Do While Not rs.EOF
Response.Write ("<OPTION value='" & rs("prod_manufacturer") & "'>" & rs("prod_manufacturer"))
rs.MoveNext
Loop
rs.Close
Set rs=Nothing
%>
</OPTION>
</SELECT>
</FORM>
</td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
<td width="506" valign="top" align="center">
<%
If Request.QueryString("qryCategory") = "" Then
Response.Write("Please select a category from the list.")
Else
Dim strCon, oCon, pages, Rec, DisplayNum, i, page, SQL, ipage, z
strCon = "DSN=ixllot"
page = request.querystring(CInt("page"))
If page = "" Then
page = 1
else
page = cint(page)
End If
DisplayNum = 0
Set oCon = Server.CreateObject ("ADODB.Connection")
Set Rec = Server.CreateObject ("ADODB.Recordset")
oCon.Open strCon
Rec.PageSize = 9
Rec.CursorLocation = adUseClient
SQL = "SELECT prod_link, prod_image FROM products WHERE (((prod_manufacturer) = '" & Request.QueryString("qryCategory") & "'))"
Rec.Open SQL, oCon
If Rec.EOF or Rec.BOF Then
Response.Write("No records found for category " & Request.QueryString("qryCategory"))
Else
Response.Write("<H3>Items Found for Category: " & Request.QueryString("qryCategory") & "</H3>")
ipage = Rec.PageCount
if page = 0 or page > ipage Then
Rec.AbsolutePage = ipage
else
Rec.AbsolutePage = page
end if
Response.Write "<table border='0' cellpadding='4' cellspacing='4' width='470' align='center' class='tableCenterProd'>"
LinkCount = 0
Do While Not Rec.EOF AND DisplayNum < 9
If LinkCount Mod 3 = 0 Then
If LinkCount <> 0 Then Response.Write "</tr>"
response.write("<tr><td align='center'>" & Rec("prod_image") & "<br>" & Rec("prod_link") & "</td>")
Else
response.write("<td align='center'>" & Rec("prod_image") & "<br>" & Rec("prod_link") & "</td>")
End If
LinkCount = LinkCount + 1
DisplayNum = DisplayNum + 1
Rec.MoveNext
Loop
response.Write("<tr><td> </td></tr><tr><td> </td><td>")
end if
If ipage > 1 Then
response.write "<p align=center>"
pages = "Pages : "
For z = 1 to ipage
If z = page then
pages = pages & page & " "
Else
pages = pages & " <a href=?page=" & z & ">" & z & "</a>" & " "
End If
Next
response.write pages & " "
End If
if ipage > 1 And page > 1 Then
response.write "<br><a href=?page="& page - 1 &">Previous</a>"
end if
response.write " "
If ipage > 1 And page < ipage Then
response.write "<a href=?page="& page + 1 &">Next Page</a>"
end if
response.write "</p>"
response.Write("</td>")
response.Write("</tr></table>")
Rec.Close
oCon.Close
set Rec = nothing
set oCon = nothing
End If
%>
<SCRIPT language="JavaScript">
function getFilter(listitem){
var object = "";
var listValue = getListValue(listitem);
document.formCategory.submit(listValue);
}
function getListValue(list){
var listValue="";
if (list.selectedIndex != -1) {
listValue = list.options[list.selectedIndex].value;
}
return (listValue);
}
</SCRIPT>
<%
ConnString = "DSN=ixllot"
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open ConnString,,,adOpenForwardOnly
Set rs = Server.CreateObject("ADODB.Recordset")
' first have to get the category records to fill the drop down....
' Set SQL statement
strSQL = "SELECT DISTINCT prod_manufacturer FROM products ORDER BY prod_manufacturer"
' Open Recordset Object
rs.Open strSQL,conn, adOpenStatic
%>
<FORM name="formCategory">
<SELECT NAME="qryCategory" size="1" onChange="getFilter(this.form.qryCategory)" class="tablecategory">
<OPTION selected>Select A Category:
<% Do While Not rs.EOF
Response.Write ("<OPTION value='" & rs("prod_manufacturer") & "'>" & rs("prod_manufacturer"))
rs.MoveNext
Loop
rs.Close
Set rs=Nothing
%>
</OPTION>
</SELECT>
</FORM>
</td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
<td width="506" valign="top" align="center">
<%
If Request.QueryString("qryCategory") = "" Then
Response.Write("Please select a category from the list.")
Else
Dim strCon, oCon, pages, Rec, DisplayNum, i, page, SQL, ipage, z
strCon = "DSN=ixllot"
page = request.querystring(CInt("page"))
If page = "" Then
page = 1
else
page = cint(page)
End If
DisplayNum = 0
Set oCon = Server.CreateObject ("ADODB.Connection")
Set Rec = Server.CreateObject ("ADODB.Recordset")
oCon.Open strCon
Rec.PageSize = 9
Rec.CursorLocation = adUseClient
SQL = "SELECT prod_link, prod_image FROM products WHERE (((prod_manufacturer) = '" & Request.QueryString("qryCategory") & "'))"
Rec.Open SQL, oCon
If Rec.EOF or Rec.BOF Then
Response.Write("No records found for category " & Request.QueryString("qryCategory"))
Else
Response.Write("<H3>Items Found for Category: " & Request.QueryString("qryCategory") & "</H3>")
ipage = Rec.PageCount
if page = 0 or page > ipage Then
Rec.AbsolutePage = ipage
else
Rec.AbsolutePage = page
end if
Response.Write "<table border='0' cellpadding='4' cellspacing='4' width='470' align='center' class='tableCenterProd'>"
LinkCount = 0
Do While Not Rec.EOF AND DisplayNum < 9
If LinkCount Mod 3 = 0 Then
If LinkCount <> 0 Then Response.Write "</tr>"
response.write("<tr><td align='center'>" & Rec("prod_image") & "<br>" & Rec("prod_link") & "</td>")
Else
response.write("<td align='center'>" & Rec("prod_image") & "<br>" & Rec("prod_link") & "</td>")
End If
LinkCount = LinkCount + 1
DisplayNum = DisplayNum + 1
Rec.MoveNext
Loop
response.Write("<tr><td> </td></tr><tr><td> </td><td>")
end if
If ipage > 1 Then
response.write "<p align=center>"
pages = "Pages : "
For z = 1 to ipage
If z = page then
pages = pages & page & " "
Else
pages = pages & " <a href=?page=" & z & ">" & z & "</a>" & " "
End If
Next
response.write pages & " "
End If
if ipage > 1 And page > 1 Then
response.write "<br><a href=?page="& page - 1 &">Previous</a>"
end if
response.write " "
If ipage > 1 And page < ipage Then
response.write "<a href=?page="& page + 1 &">Next Page</a>"
end if
response.write "</p>"
response.Write("</td>")
response.Write("</tr></table>")
Rec.Close
oCon.Close
set Rec = nothing
set oCon = nothing
End If
%>