您现在的位置: PQ秀秀网 >> PQ知道 >> 正文 用户登录 新用户注册
分页的问题帮忙改一下代码!谢谢 Web 开发 / ASP
作者:佚名    文章来源:不详    点击数:加载中...    更新时间:2008-7-12 字体:[ ]
添加到收藏: 添加到百度收藏  收藏到QQ书签  添加到雅虎收藏  添加到新浪ViVi  添加到天极网摘  添加到和讯网摘

分页的问题帮忙改一下代码!谢谢

楼主wengkay()2006-12-21 22:49:46 在 Web 开发 / ASP 提问

<!--#include   file="conn.asp"-->  
  <%  
   
  dim   currentpage,page_count,Pcount  
  dim   totalrec,endpage  
  currentPage=request("page")  
  if   currentpage=""     then  
  currentpage=1  
  else  
  currentpage=clng(currentpage)  
  if   err   then  
  currentpage=1  
  err.clear  
  end   if  
  end   if  
   
  Productid=session("Productid")  
  if   request("Productnub")   =   ""   then  
  set   rs=Server.CreateObject("ADODB.RecordSet")  
  rs.open   "Select   *   from   Product   where   RoomID='"&session("Productid")&"'   order   by   id   desc",conn,1,3  
  else  
  Productid   =   request("Productnub")  
  set   rs=Server.CreateObject("ADODB.RecordSet")  
  rs.open   "Select   *   from   Product   where   RoomID='"&   Productid   &"'   order   by   id   desc",conn,1,3  
  end   if  
  %>  
  <html>  
  <head>  
  <meta   http-equiv="Content-Language"   content="zh-cn">  
  <meta   http-equiv="Content-Type"   content="text/html;   charset=gb2312">  
  <title>产品展示</title>  
  <style   type="text/css">  
  <!--  
  body   {     font-size:   9pt}  
  table   {     font-size:   9pt}  
  .c1   {   font-size:   10.5pt}  
  a   {     text-decoration:   none;   font-size:   9pt}  
  a:visited   {     color:   #0000FF;   text-decoration:   none;   }  
  a:hover   {     color:   #FF0033;   text-decoration:   none;   }  
  -->  
  </style>  
  </head>  
  <body   bgcolor="#F7F7F7">  
  <div   align="center">  
      <table   border="0"   width="100%"   cellspacing="0"   cellpadding="2">  
          <tr>    
              <td   width="200%">&nbsp;</td>  
          </tr>  
      </table>  
  </div>  
  <div   align="center">  
      <center>  
          <table   width="100%"   height="212"   border="0"   cellpadding="3"   cellspacing="0">  
              <%   if   rs.eof   then   %>  
              <tr>    
                  <td>   对不起,现在没有图像数据!</td>  
              </tr>  
              <%  
  else  
  rs.PageSize   =   Cint(4)  
  rs.AbsolutePage=currentpage  
  page_count   =   0  
  totalrec   =   rs.recordcount  
  while   (not   rs.eof)   and   (not   page_count   =   Cint(4))  
  %>  
              <tr>    
                  <%  
  js1   =   0                                
                  do   while   js1   <   4  
                  dim   id  
  id   =   rs("ID")  
                  %>  
                  <td   align="center">   <table   width="150"   height="130"   cellspacing="1"   bgcolor="#E4E4E4"   style="table-layout:fixed   ">         <tr>    
                              <a   href="#"   onClick="javascript:parent.contents.mainFrame.icon(<%=id%>);"   ><td     height="100"   bgcolor="#F7F7F7"   style="cursor:hand"><div   align="center"><img   border="0"   src="<%=rs("IconURL")%>"></div></td></a>  
                          </tr>  
                      </table>  
                  <table   width="150"   border="0"   cellpadding="0"   cellspacing="1"   bgcolor="#E4E4E4">  
                          <tr>    
                              <td   width="70"   align="center">名称:<%=rs("Name")%></td>  
                              <td   width="77"   align="center">价格:<%=rs("Price")%></td>  
                          </tr>  
                      </table></td>  
  <%  
  rs.movenext  
  if   rs.eof   then                            
  exit   do                
  end   if                      
  js1   =   js1   +   1                          
  loop  
  %>  
              </tr>  
              <%  
  wend  
  Pcount   =   rs.PageCount  
  %>  
              <td   height="24"   colspan="6">   <table   border="0"   width="100%"   cellspacing="0"   cellpadding="0">  
                      <tr>    
                          <td   align="center">分页:    
                              <%  
  if   currentpage   >   4   then  
  response.write   "<a   href=""?page=1&roomnub="&roomid&""">[1]</a>   ..."  
  end   if  
  if   Pcount>currentpage+3   then  
  endpage=currentpage+3  
  else  
  endpage=Pcount  
  end   if  
  for   i=currentpage-3   to   endpage  
  if   not   i<1   then  
  if   i   =   clng(currentpage)   then  
                  response.write   "   <font   color=red>["&i&"]</font>"  
  else  
                  response.write   "   <a   href=""?page="&i&"&roomnub="&roomid&""">["&i&"]</a>"  
  end   if  
  end   if  
  next  
  if   currentpage+3   <   Pcount   then    
  response.write   "...   <a   href=""?page="&Pcount&"&roomnub="&roomid&""">["&Pcount&"]</a>"  
  end   if  
  %>   </td>  
                      </tr>  
                  </table></td>  
              </tr>  
          </table>  
      </center>                              
  </div>                          
  </body>                              
  </html>                  
  <%            
  rs.close            
  conn.close  
  end   if              
  %> 问题点数:100、回复次数:5Top

1 楼lcw321321(文子)回复于 2006-12-22 14:57:46 得分 0

代码太长Top

2 楼ishion(爱森)回复于 2006-12-22 15:05:48 得分 0

用个分页的类或者函数多好啊Top

3 楼anjing5566()回复于 2006-12-22 17:43:00 得分 0

直接定义个过程好了Top

4 楼gw_noah()回复于 2006-12-22 17:48:24 得分 0

效率比较高的分页程序,插入网页中就可以使用,只需将已有代码中的strsql(数据库查询语句),字段名称,字段名替换为实际中使用的名称就可以了,还可以自行扩充一些样式、操作方面的代码  
   
  <script   language="javascript"   type="text/javascript">  
  <!--  
   
  function   page()  
  {  
  var   pagenum=0  
  var   c  
  pagenum=document.formpage.textpage.value;  
  //alert(document._more.go.value.length);  
  for   (i=1;i<=document.formpage.textpage.value.length;i=i+1)  
                  {  
                      c=document.formpage.textpage.value.substring(i-1,i);  
                    if   (!(c=="1"   ||   c=="2"   ||   c=="3"   ||   c=="4"   ||   c=="5"   ||   c=="6"   ||   c=="7"   ||   c=="8"   ||   c=="9"   ||   c=="0"))  
                            {  
                            alert("请输入数字");  
          document.formpage.textpage.value=document.formpage.pagedown.value-1;  
                              return   false;  
                              }  
                    }  
  if   (pagenum=="")  
          {  
          alert("请输入跳到页的数字");  
     
          return   false;  
            }  
  document.formpage.submit();  
  }  
   
  </script>  
  <table     class="table1">  
  <tr><td>查询的表</td></tr>  
        <tr>  
          <td>    
    <table     width="100%"   class="table2">  
              <tr>              
                    <td   width="25%">字段名称1</td>  
                    <td   width="25%">字段名称2</td>  
                    <td   width="25%">字段名称3</td>  
                    <td   width="25%">字段名称4</td>  
                    <td   width="25%">字段名称5</td>  
                </tr>  
  <%  
  dim   rs  
  dim   pagenum'计算总页数  
  dim   nowpage'当前页数  
  dim   num  
  dim   sum'记录总数  
  dim   maxnum'每页最大显示行数  
  dim   sumpage'实际总页数  
  maxnum=10'每页最大显示行数  
  nowpage=1'当前页数初始化  
  '***********获得提交的页数  
  if   request("pageif")="1"   then'判断是不是下面浏览按钮提交的操作  
        if   request("pagesubmit")="首页"   then  
                nowpage=1  
        elseif   request("pagesubmit")="上一页"   then    
                nowpage=cint(request("pageup"))  
        elseif   request("pagesubmit")="下一页"   then  
                nowpage=cint(request("pagedown"))  
        elseif   request("pagesubmit")="尾页"   then  
                nowpage=cint(request("pagelast"))  
        else  
          nowpage=getcint(request("textpage"),1)  
        end   if  
  else  
    nowpage=getcint(request("nowpage"),1)  
  end   if  
  '***********提取数据记录  
  set   rs=server.createobject("adodb.recordset")  
          rs.open   strsql,conn,1,1     '向数据库提交sql语句  
  if   err.number   <>   0   then  
        response.write   "数据库错误"  
      else  
        if   rs.bof   and   rs.eof   then  
        rs.close  
        sum=0  
        pagenum=0  
        sumpage=0  
        response.write   "无记录"  
        else  
        sum=rs.RecordCount'获得符合要求的记录总数  
        pagenum=int(sum/maxnum)'计算显示的页数  
         
                  if   pagenum>1   then'排除记录只有一页时的情况  
                    if   (sum/maxnum)>pagenum   then  
                              sumpage=pagenum+1  
              else:  
                  sumpage=pagenum  
              end   if  
                      else:  
                  sumpage=1  
            end   if  
             
                        if   nowpage>sumpage   then'如果输入的页数超出实际页数范围,则当前页设为最大的页数  
              nowpage=sumpage  
            end   if  
                  rs.movefirst  
                  if   nowpage>1   then  
                rs.move   (nowpage-1)*maxnum'从上页显示的记录开始  
            end   if            
              for   num=1   to   maxnum  
                          if   not   rs.eof     then      
                          %>  
                        <tr     >  
                              <td   ><%=rs("字段名")%></td>  
                              <td   ><%=rs("字段名")%></td>  
                              <td   ><%=rs("字段名")%></td>  
                              <td   ><%=rs("字段名")%></td>  
                              <td   ><%=rs("字段名")%></td>  
                          </tr>  
          <%rs.movenext  
        else   %>  
                                <tr>    
                                      <td>&nbsp;</td>  
              <td>&nbsp;</td>  
              <td>&nbsp;</td>  
              <td>&nbsp;</td>  
              <td>&nbsp;</td>                    
              </tr>  
                      <%end   if  
              next  
      rs.close    
    end   if  
  end   if  
  set   rs=nothing   %>  
          </table>  
          <table   width="100%"   border="0"   align="center">  
                  <tr>    
                      <td   height="20"       >    
  <form   method="post"   name="formpage"   action="<%=web%>"   style="margin:0px   0px   0px   0px;">        
            <input   name="pageif"   type="hidden"   value="<%=1%>"   />  
            <input   name="pagefirst"   type="hidden"   value="<%   =1%>"   />  
            <input   name="pagesubmit"   type="submit"   value="首页"   class="hidden"/>  
            <%if   int(nowpage)>1   then   %>  
                <input   name="pageup"   type="hidden"   value="<%   =int(nowpage)-1%>"   />  
                  <%else:       %>  
                <input   name="pageup"   type="hidden"   value="<%   =1%>"   />  
              <%   end   if%>  
            <input   name="pagesubmit"   type="submit"   value="上一页"     class="hidden"   />  
                  <%   if   int(nowpage)<pagenum   then   %>  
                              <input   name="pagedown"   type="hidden"   value="<%   =(int(nowpage)+1)%>"   />  
                  <%else:%>  
                              <input   name="pagedown"   type="hidden"   value="<%   =sumpage   %>"   />  
                  <%end   if   %>    
            <input   name="pagesubmit"   type="submit"   value="下一页"     class="hidden"       />  
            <input   name="pagelast"   type="hidden"   value="<%=sumpage%>"   />  
            <input   name="pagesubmit"   type="submit"   value="尾页"     class="hidden"/>  
              <font   size="2"   >共<%=sum%>条记录,第</a></font>    
                <input   name="textpage"   type="text"     class="txtll"   value="<%=nowpage   %>"   size="5"maxlength="4"   />  
              <font   class=font4green>   <a>页/共   <%=sumpage%>页</a>   </font>    
              <input     type="hidden"   name="pagesubmit"       class="hidden"   onclick="javascript:page()"     value="浏览"   >  
          </form>  
        </td>  
                  </tr>  
              </table>  
        </td>  
      </tr>  
  </table>  
   
  Top

5 楼gw_noah()回复于 2006-12-22 17:48:56 得分 0

看懂了给分!Top

文章录入:andy    责任编辑:andy 
  网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)