收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 1895|回复: 3

[asp] 求教一个ASP分类分页的问题

[复制链接]
发表于 2011-6-4 00:40:54 | 显示全部楼层 |阅读模式
请教一个后台管理产品分页的问题,
问题描述:“这是个产品管理的一个后台,后台有很多分类,点击某一个分类的时候,当前页面显示10条该类的产品,但是当我点击下一页的时候,列表出现的就是所有的产品,而不是当前分类下面的产品,请高手解答下,”
谢谢,小弟刚学ASP, 很多地方还不是很明白,请指点下该如何修改才好!

下面是我的代码了
<!--#include file="../inc/Conn.asp"-->
<!--#include file="Inc/Admin.Asp"-->
<!--#include file="Inc/Function.asp"-->
<%
PurviewValue="productmanage"
If not CheckAdmin(PurviewValue) then
Response.Write("<script language=""JavaScript"">alert(""越权操作!"");history.go(-1);")
Response.Write "</script>"
response.end
End If
%>
<%

dim strFileName
const MaxPerPage=10
dim totalPut,CurrentPage,TotalPages
dim i,j
dim ID
dim Title
dim sql,rs
dim BigClassName,SmallClassName

BigClassName=trim(request("BigClassName"))
SmallClassName=trim(request("SmallClassName"))
strFileName="ProductManage.asp?BigClassName=" & BigClassId & "&SmallClassName=" & SmallClassId

Title=Trim(request("Title"))
ID=Request("ID")

if request("page")<>"" then
    currentPage=cint(request("page"))
else
        currentPage=1
end if

sql="select * from Product where ID>0"
if Title<>"" then
        sql=sql & " and title like '%" & Title & "%' "
end if
if BigClassName<>"" then
        sql=sql & " and BigClassId=" & BigClassName
        if SmallClassName<>"" then
                sql=sql & " and SmallClassId=" & SmallClassName
        end if
end if
sql=sql & " order by ID desc"


Set rs= Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
%>
<SCRIPT language=javascript>
function unselectall()
{
    if(document.del.chkAll.checked){
        document.del.chkAll.checked = document.del.chkAll.checked&0;
    }        
}

function CheckAll(form)
  {
  for (var i=0;i<form.elements.length;i++)
    {
    var e = form.elements[i];
    if (e.Name != "chkAll")
       e.checked = form.chkAll.checked;
    }
  }
function ConfirmDel()
{
   if(confirm("确定要删除选中的产品吗?一旦删除将不能恢复!"))
     return true;
   else
     return false;
         
}

</SCRIPT>
<!-- #include file="Inc/Head.asp" -->
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td  align="center" valign="top"><table  border="0" align="center" cellpadding="0" cellspacing="1"  class="border">
        <tr>
          <td  height="25" class="tdbg">|&nbsp;
            <%
dim sqlBigClass,sqlSmallClass,rsBigClass,rsSmallClass,sqlSpecial,rsSpecial
sqlBigClass="select * from BigClass"
Set rsBigClass= Server.CreateObject("ADODB.Recordset")
rsBigClass.open sqlBigClass,conn,1,1
if rsBigClass.eof then
        response.Write("还没有任何栏目,请首先添加栏目。")
end if
do while not rsBigClass.eof
        if rsBigClass("BigClassName")=BigClassName then
                response.Write("<a href='ProductManage.asp?BigClassName=" & rsBigClass("BigClassId") & "'><font color='red'>" & rsBigClass("BigClassName") & "</font></a> | ")               
        else
                response.Write("<a href='ProductManage.asp?BigClassName=" & rsBigClass("BigClassId") & "'>" & rsBigClass("BigClassName") & "</a> | ")
        end if
        rsBigClass.movenext
loop
rsBigClass.close
set rsBigClass=nothing
%>
          </td>
        </tr>
        <%
if BigClassName<>"" then

        sqlSmallClass="select * from SmallClass where BigClassId=" & BigClassName
        Set rsSmallClass= Server.CreateObject("ADODB.Recordset")
        rsSmallClass.open sqlSmallClass,conn,1,1
        if not (rsSmallClass.bof and rsSmallClass.eof) then
        SmallClassName= rsSmallClass("SmallClassName")
                response.write "<tr><td class=tdbg>"
                do while not rsSmallClass.eof
                        if rsSmallClass("BigClassId")=SmallClassName then
                                response.Write("&nbsp;<a href='ProductManage.asp?BigClassName=" & rsSmallClass("BigClassId") & "&SmallClassName=" & rsSmallClass("SmallClassId") & "'><font color='red'>" & rsSmallClass("SmallClassName") & "</font></a>&nbsp;&nbsp;")                               
                        else
                                response.Write("&nbsp;<a href='ProductManage.asp?BigClassName=" & rsSmallClass("BigClassId") & "&SmallClassName=" & rsSmallClass("SmallClassId") & "'>" & rsSmallClass("SmallClassName") & "</a>&nbsp;&nbsp;")
                        end if
                        rsSmallClass.movenext
                loop
                response.write "</td></tr>"
        end if
        rsSmallClass.close
        set rsSmallClass=nothing
       
        set rss=Server.CreateObject("ADODB.Recordset")
rss.open "select*from BigClass where BigClassId=" & BigClassName,conn,1,2
if not rss.eof then
BigClassName=rss("BigClassName")
end if
set rss=nothing

end if
%>
      </table>
      <form name="del" method="Post" action="ProductDel.asp" onSubmit="return ConfirmDel();">
        <table  border="0" cellpadding="0" cellspacing="1"  class="border">
          <tr>
            <td height="25" class="tdbg"><a href="ProductManage.asp">&nbsp;产品管理</a> &gt;&gt;
              <%
if request.querystring="" then
        response.write "所有产品"
else
        if request("Query")<>"" then
                if Title<>"" then
                        response.write "名称中含有“<font color=blue>" & Title & "</font>”的产品"
                else
                        response.Write("所有产品")
                end if
        else
                if Request("BigClassName")<>"" then
                        response.write "<a href='ProductManage.asp?BigClassName=" & Request("BigClassName") & "'>" & BigClassName & "</a>&nbsp;&gt;&gt;&nbsp;"
                        if Request("SmallClassName")<>"" then
                                response.write "<a href='ProductManage.asp?BigClassName=" & Request("BigClassName") & "&SmallClassName=" & Request("SmallClassName") & "'>" & SmallClassName & "</a>"
                        else
                                response.write "所有小类"
                        end if
                end if               
        end if
end if
%>
            </td>
            <td width="150" class="tdbg">&nbsp;
            <%
          if rs.eof and rs.bof then
                response.write "共找到 0 个产品</td></tr></table>"
        else
            totalPut=rs.recordcount
                if currentpage<1 then
                       currentpage=1
            end if
            if (currentpage-1)*MaxPerPage>totalput then
                           if (totalPut mod MaxPerPage)=0 then
                             currentpage= totalPut \ MaxPerPage
                          else
                              currentpage= totalPut \ MaxPerPage + 1
                           end if

            end if
                response.Write "共找到 " & totalPut & " 个产品"
%> </td>
          </tr>
        </table>
        <br>
        <%               
            if currentPage=1 then
                showContent
                showpage strFileName,totalput,MaxPerPage,true,false,"个产品"
                    else
                        if (currentPage-1)*MaxPerPage<totalPut then
                            rs.move  (currentPage-1)*MaxPerPage
                         dim bookmark
                           bookmark=rs.bookmark
                    showContent
                    showpage strFileName,totalput,MaxPerPage,true,false,"个产品"
                else
                        currentPage=1
                           showContent
                           showpage strFileName,totalput,MaxPerPage,true,false,"个产品"
                    end if
                end if
        end if
%>
        <%  
sub showContent
           dim i
    i=0
%>
        <table  border="0" cellpadding="0" cellspacing="1"  class="border" style="word-break:break-all">
          <tr class="title">
            <td width="57" height="25" align="center" class="Title"><strong>选中</strong></td>
            <td width="34"  height="25" align="center" class="Title"><strong>ID</strong></td>
            <td width="100" align="center" class="Title"><strong>产品编号</strong></td>
             <td width="151" align="center" class="Title"><strong>产品类别</strong></td>
            <td width="231" align="center" class=Title ><strong>产品名称</strong></td>
             <td width="282" align="center" class=Title ><strong>产品图片</strong></td>
            <td width="83" align="center" class="Title" ><strong>加入时间</strong></td>
            <td width="83" align="center" class="Title" ><strong>审核情况</strong></td>
            <td width="100" align="center" class="Title" ><strong>操作</strong></td>
          </tr>
          <%do while not rs.eof%>
          <tr class="tdbg">
            <td width="57" height="22" align="center" class=tdbg>
              <input name='ID' type='checkbox' onClick="unselectall()" id="ID" value='<%=cstr(rs("ID"))%>'>
            </td>
            <td width="34" align="center" class=tdbg><%=rs("ID")%></td>
            <td width="100" align="center" class=tdbg><%=rs("Product_Id")%></td>
             <td width="151" align="center" class=tdbg><%=rs("BigClassName")%>><%=rs("SmallClassName")%></td>
            <td class=tdbg>&nbsp;<%if rs("IsTop")=true then response.Write("<font color='#FF0000'>【置顶】</font>") end if%><%if rs("IsElite")=true then response.Write("<font color='#FF0000'>【推荐】</font>") end if%><%if rs("IsHot")=true then response.Write("<font color='#FF0000'>【热点】</font>") end if%><a href="../Productdetial.asp?ID=<%=rs("ID")%>" target="_blank"><%=rs("title")%></a></td>
             <td width="282" align="center" class=tdbg><img src="../<%=rs("DefaultPicUrl") %>" width="100" height="100" /></td>
            <td width="83" align="center" class=tdbg><%= FormatDateTime(rs("UpdateTime"),2) %></td>
            <td width="83" align="center" class=tdbg>
              <%if rs("Passed")=true then%>
              已审核
              <%else%> <font color="#FF0000">未审核</font> <%end if%> </td>
            <td width="100" align="center" class=tdbg> <a href="ProductModify.asp?ID=<%=rs("ID")%>">修改</a>
              <a href="ProductDel.asp?ID=<%=rs("ID")%>&Action=Del" onClick="return ConfirmDel();">删除</a>
            </td>
          </tr>
          <%
        i=i+1
              if i>=MaxPerPage then exit do
              rs.movenext
        loop
%>
        </table>
        <table  border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td width="250" height="30"><input name="chkAll" type="checkbox" id="chkAll" onclick=CheckAll(this.form) value="checkbox">
              选中本页显示的所有产品</td>
            <td><input name="submit" type='submit' value='删除选定的产品' <%if session("purview")>=3 and session("purview")<=4 and PurviewChecked=False then response.write "disabled"%>>
              <input name="Action" type="hidden" id="Action" value="Del"></td>
          </tr>
        </table>
        <%
   end sub
%>
      </form>
      <br> <table  border="0" cellpadding="0" cellspacing="0" class="border">
        <tr class="tdbg">
          <form name="searchsoft" method="get" action="ProductManage.asp">
            <td height="30"> <strong>查找产品:</strong> <input name="Title" type="text" class=smallInput id="Title" size="20" maxlength="50">
              <input name="Query" type="submit" id="Query" value="查 询"> &nbsp;&nbsp;请输入产品名称。如果为空,则查找所有产品。</td>
          </form>
        </tr>
    </table></td>
  </tr>
</table>
<!-- #include file="Inc/Foot.asp" -->
<%
rs.close
set rs=nothing  
call CloseConn()
%>
 楼主| 发表于 2011-6-4 10:57:21 | 显示全部楼层
没人鸟我啊!~
回复 支持 反对

使用道具 举报

发表于 2011-6-5 15:25:39 | 显示全部楼层
你这台长了。而且分页来说。慢大街都是现成的分页呀。根本不需要自己去写!
你这个情况。一般都是 参数没有传递引起的!

[[i] 本帖最后由 ldwz 于 2011-6-5 15:26 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-6-7 17:15:44 | 显示全部楼层
3Q  已经解决!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( 湘ICP备12001430号 )  

GMT+8, 2020-9-25 02:20 , Processed in 0.094488 second(s), 9 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表