• asp数据操作类DB


    conn.asp

    <%
    dim conn,ps
    set Conn=Server.CreateObject("ADODB.Connection")
    PS="Provider=SQLOLEDB;Data Source=(local);Initial Catalog=tradesina;User ID=***;Password=***;"
    'PS="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath(data) 
    conn.open PS
    %>

    db-publuc.js

    function gotopage(pagenum)
    	{
    		var surl,ssearch,turl,last,page;
    		surl = self.location.href;
    		ssearch = self.location.search.substring(1);
    		if (ssearch.indexOf("page") != -1)
    		{
    		  last = surl.lastIndexOf("=");
    		  turl = surl.substring(0,last+1) + pagenum;
    		  }
    		else if (surl.indexOf("?") != -1)
    		{
    		  turl = surl + "&page=" + pagenum;
    		  }
    		else 
    		{
    		  turl = surl + "?page=" + pagenum;
    		  }
    		self.location = turl;
    	}
    	function select_all(isCked)
    	{
    		 var ck=document.getElementsByName("option")  //.getElementsByTagName("input");//意思是找到页面上所有 <input > 节点
    		 for(var i=0 ;i<ck.length;i++)
    		 {
    			 if(ck[i].type=="checkbox")
    				if(ck[i]!=isCked)
    				 {
    					 ck[i].checked=!ck[i].checked;
    				 }
    		 }
    	}
    	
    function del_selected(del_page)
    {
      var s = false; //用来记录是否存在被选中的复选框
      var Newsid, n=0; 
      var strid, strurl;
      var nn = document.getElementsByName("option"); //返回复选框Cate的数量
      for (j=0; j<nn.length; j++) 
      {
        if (nn[j].checked) 
    	{
          n = n + 1;
          s = true;
          logid = nn[j].value;  //转换为字符串
          //生成要删除新闻编号的列表
    	  
          if(n==1) 
    	  {
            strid = logid;
          }
          else 
    	  {
            strid = strid + "," + logid;
          }
        }
      }
      if(!s) 
      {
        alert("请选择要删除的记录项目!");
        return false;
      }	
      if (confirm("确定要删除删除的项目吗?")) 
      {
    	window.open(del_page+"&id="+ strid,"","alwaysRaised=yes,resizable=auto,minimizebutton=yes,width=200,height=120");
      }
    }
    	
    	//=============================================================
    	// 函 数 名:confirmdel
    	// 功能描述:弹出对话框确定是否要删除文件
    	// 输入参数:delfile,删除时跳转的页名
    	// 返 回 值:无
    	// 创建日期:2005-9-16
    	// 修改日期:2005-9-16
    	// 作    者:李瑞斌
    	// 附加说明:
    	//==============================================================
    
    function confirmdel(delfile){
           if (confirm("真的要删除这条记录?")) 
          	   open(delfile,"","alwaysRaised=yes,resizable=auto,minimizebutton=yes,width=200,height=120");
    }
    
    function log_isok(theform)
    {
    if (theform.username.value=="")
      {
        alert("Please input your E-mail address.");
        theform.username.focus();
        return (false);
      }
    if (theform.pass1.value=="")
      {
        alert("Please input your password.");
        theform.pass1.focus();
        return (false);
      }
    if (theform.pass1.value!="")
      {
      theform.pass.value=MD5(theform.pass1.value);
      }
    
    
    return (true);
    }

    db.asp

    <% 
    'Option Explicit
    Response.CodePage=65001%>
    <% Response.Charset="UTF-8" %>
    <script type="text/javascript" language="javascript" src="images/db-publuc.js"></script>
    <!--#include file="Global_variables.asp" -->
    <!--#include file="conn.asp" -->
    <%
    'on error resume next
    
    Class DB
    	dim CurrentPage,zpage,rscount
    	dim rs 
    	dim MaxPerPage
    	dim odic,DbSql
    	dim delImage
    
    	'=============================================================
    	' 函 数 名:Close
    	' 功能描述:关闭Conn链接
    	' 输入参数:无
    	' 返 回 值:无
    	' 创建日期:2011-9-29
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    	Public sub Close()
    		rsClose()
    		if TypeName(conn)<>"Nothing" then  '判断conn是否注销
    			if conn.State=1 then  '判断conn是否关闭
    				conn.Close
    			end if
    			set conn=nothing
    		end if
    	end sub
    	
    	'=============================================================
    	' 函 数 名:rsClose
    	' 功能描述:关闭rs链接
    	' 输入参数:无
    	' 返 回 值:无
    	' 创建日期:2011-9-29
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    	Public sub rsClose()
    		if TypeName(rs)<>"Nothing" then '判断rs是否注销
    			if rs.State=1 then		'判断RS是否关闭
    				rs.close
    			end if
    			set rs=nothing
    		end if
    	end sub    
    	
    	'=============================================================
    	' 函 数 名:ExecNonSql
    	' 功能描述:执行无返回值的数据库操作
    	' 输入参数:sqlstr,查询的SQL字符串
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    	  Public property get ExecNonSql(ByVal sqlstr)
    		conn.execute sqlstr
    	  End property
    	  
    	  '=============================================================
    	' 函 数 名:Exec
    	' 功能描述:执行返回数据库记录集
    	' 输入参数:sqlstr,查询的SQL字符串
    	' 返 回 值:当recordset对象rs 有记录时返回 true 否则返回 Fslse
    	' 创建日期:2005-9-16
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:无法使用分页
    	'==============================================================
    	  Public property get Exec(ByVal sqlstr)
    		set rs=conn.execute(sqlstr)
    		if rs.eof then 
    			Exec=False
    		else
    			Exec=true
    		end if
    	  End property
    	
    	'=============================================================
    	' 函 数 名:ExecSql
    	' 功能描述:执行查询操作,rs只读
    	' 输入参数:sqlstr,查询的SQL字符串
    	' 返 回 值:当recordset对象rs 有记录时返回 true 否则返回 Fslse
    	' 创建日期:2005-9-16
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:主要用于翻页
    	'==============================================================
    	Public property get ExecSql(ByVal sqlstr) 
    		set rs=server.CreateObject("adodb.recordset")
    		rs.open sqlstr,conn,1,1
    		if rs.eof then 
    			ExecSql=False
    		else
    			ExecSql=true
    		end if
    	End property
    	
    	'=============================================================
    	' 函 数 名:ExecSqlWrite
    	' 功能描述:执行查询操作,rs可写
    	' 输入参数:sqlstr,查询的SQL字符串
    	' 返 回 值:当recordset对象rs 有记录时返回 true 否则返回 Fslse
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    	Public property get ExecSqlWrite(ByVal sqlstr) 
    		set rs=server.CreateObject("adodb.recordset")
    		'response.write sqlstr
            rs.open sqlstr,conn,1,3
    		if rs.eof then 
    			ExecSqlWrite=False
    		else
    			ExecSqlWrite=true
    		end if
    	End property
    
    	'=============================================================
    	' 函 数 名:AddEditRS
    	' 功能描述:向指定表中添加、修改记录。如rs_id不为空则修改记录
    	' 输入参数:tabname,表名;rs_id 记录ID
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2011-9-29
    	' 作    者:
    	' 附加说明:
    	'==============================================================
    	Public function AddEditRS(ByVal tabname,ByVal rs_id)
    		set odic=server.CreateObject("Scripting.Dictionary")
    		for each okey in request.Form
    			odic.add okey,trim(request.Form.item(okey))
    		next
    		'odic.Remove "Submit"
    		if rs_id="" then 
    			DbSql="select top 1 * from ["&tabname&"]"
    		else
    			DbSql="select top 1 * from ["&tabname&"] where id="&rs_id
    		end if
    		ExecSqlwrite(DbSql)
    		
    		with rs
    			if rs_id="" then .AddNew
    			for each Okey in odic
    				okey1=LCase(okey)
    				if instr(okey1,"form")=0 then
                         'response.write (okey)&"---"&odic.item(okey)&"</br>"
    					.Fields(Okey)=odic.item(okey)
    				end if
    			next
    			.update
    		end with
    		call rsClose()
    	end function
    	
    	
    	'=============================================================
    	' 函 数 名:delRecord
    	' 功能描述:删除指定表的记录.如果全局变量delImage为True,则删除该记录的相应图片
    	' 输入参数:tabname,表名;id 记录id
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    		Public function delRecord(ByVal tabname,ByVal id)
    		dim sql
    		sql="select * from ["&tabname&"] where id="
    		if id="" then 
    			response.Write "请选择所要删除的项目"
    			response.End()
    		end if
    		z=split(id,",")
    		c=0
    		sql=sql&z(c)
    		for c=1 to ubound(z)
    			sql=sql&" or id="&z(c)
    		next
    		ExecSqlWrite(sql)
    		if delImage=true then spe_id=rs("spe_id")
    		do while not rs.eof
    			rs.delete
    			rs.update
    			rs.movenext
    		loop
    		if delImage=true then
    			delRsImg id,spe_id
    		end if
    		end function
    
    
    	'=============================================================
    	' 函 数 名:delRsImg
    	' 功能描述:删除Image_up(图片表)中有相关表中的指定图片记录
    	' 输入参数:id 记录id
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    
    		Public function delRsImg(ByVal id,ByVal spe_id)
    		dim sql
    		dim delfile,fso,f2
    		sql="Select * from Image_up where spe_id="&spe_id&" and (Lin_type="
    
    		if id="" then 
    			response.Write "请选择所要删除的项目"
    			response.End()
    		end if
    		z=split(id,",")
    		sql=sql&z(c)
    			for c=1 to ubound(z)
    				sql=sql&" or Lin_type="&z(c)
    			next
    		sql=sql&")"
    		if ExecSqlWrite(sql) then
    			'删除图片
    			do while not rs.eof
    				delfile="../up_image/"&rs("Up_Path")
    				Set fso = CreateObject("Scripting.FileSystemObject") 
    				Set f2 = fso.GetFile(Server.mappath(delfile))
    				f2.delete
    				rs.delete
    				rs.movenext
    			loop
    			
    		end if
    		end function
    	'=============================================================
    	' 函 数 名:delImg
    	' 功能描述:删除Image_up(图片表)中的指定图片记录
    	' 输入参数:id 记录id
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    
    		Public function delImg(ByVal id)
    		dim sql
    		dim delfile,fso,f2
    		sql="Select * from Image_up where id="
    		if id="" then 
    			response.Write "请选择所要删除的项目"
    			response.End()
    		end if
    		z=split(id,",")
    		sql=sql&z(c)
    			for c=1 to ubound(z)
    				sql=sql&" or id="&z(c)
    			next
    		if ExecSqlWrite(sql) then
    			'删除图片
    			do while not rs.eof
    				delfile="../up_image/"&rs("Up_Path")
    				Set fso = CreateObject("Scripting.FileSystemObject") 
    				Set f2 = fso.GetFile(Server.mappath(delfile))
    				f2.delete
    				rs.delete
    				rs.movenext
    			loop
    			
    		end if
    		end function
    	'=============================================================
    	' 函 数 名:delspace
    	' 功能描述:将多个空格转换成一个字符
    	' 输入参数:strData,要转化的字符串;str_replacewith 要替换的字符 
    	' 返 回 值:转换后的文章
    	' 创建日期:2006-8-31
    	' 修改日期:2008-8-31
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================		
    		Public property get delspace(ByVal strData,ByVal str_replacewith) 
    		  dim newstrData  
    		  set newstrData =new RegExp   
    		  newstrData.Global = True   
    		  newstrData.Pattern = "([\s\t/]+)"   
    		  formatData= newstrData.Replace(strData,str_replacewith)
    		end property
    			
    	'=============================================================
    	' 函 数 名:RemoveHTML
    	' 功能描述:删除文章的格式
    	' 输入参数:strHTML,带格式的文章
    	' 返 回 值:转换后的文章
    	' 创建日期:2006-9-18
    	' 修改日期:2006-9-18
    	' 作    者:互联网 http://community.csdn.net/Expert/topic/5025/5028754.xml?temp=.243313
    	' 附加说明:
    	'==============================================================
    		Public property get RemoveHTML(ByVal strHTML)
    		Dim objRegExp, Match1, Matches   
    		Set objRegExp = New Regexp
    		
    		objRegExp.IgnoreCase = True
    		objRegExp.Global = True
    		'取闭合的<>
    		objRegExp.Pattern = "<.+?>"
    		'进行匹配
    		Set Matches = objRegExp.Execute(strHTML)
    		
    		' 遍历匹配集合,并替换掉匹配的项目
    		For Each Match1 in Matches   
    		 strHtml=Replace(strHTML,Match1.Value,"")
    		Next
    		Set objRegExp = Nothing
    		RemoveHTML=strHTML
    		End property
    		
    	'=============================================================
    	' 函 数 名:FilterHTML
    	' 功能描述:截取后显示多少个字符
    	' 输入参数:str,文章;strlen返回的字符个数
    	' 返 回 值:转换后的文章
    	' 创建日期:2006-9-18
    	' 修改日期:2006-9-18
    	' 作    者:互联网 http://community.csdn.net/Expert/topic/5025/5028754.xml?temp=.243313
    	' 附加说明:
    	'==============================================================
    		Public property get FilterHTML(ByVal str,ByVal strlen)
    		Dim re
    		Set re=new RegExp
    		re.IgnoreCase =True
    		re.Global=True
    		re.Pattern="<(.[^>]*)>"
    		str=re.Replace(str,"")
    		set re=Nothing
    		
    		Dim l,t,c,i
    		l=Len(str)
    		t=0
    		For i=1 to l
    		c=Abs(Asc(Mid(str,i,1)))
    		If c>255 Then
    		t=t+2
    		Else
    		t=t+1
    		End If
    		If t>=strlen Then
    		cutStr=left(str,i)&"..."
    		Exit For
    		Else
    		cutStr=str
    		End If
    		Next
    		cutStr=Replace(cutStr,chr(10),"")
    		cutStr=Replace(cutStr,chr(13),"")
    		FilterHTML=cutStr
    		End property
    		
    	'=============================================================
    	' 函 数 名:fullstr
    	' 功能描述:将提交表单中的回车空格转换成html代码,同时过滤"'"
    	' 输入参数:str,要转换的字符串
    	' 返 回 值:strTemp,转换后的字符串
    	' 创建日期:2005-9-24
    	' 修改日期:2005-9-24
    	' 作    者:崔朝普
    	' 附加说明:
    	'==============================================================
    		Public property get fullstr(ByVal str)
    			dim strTemp
    			if isnull(str) then
    				strTemp=str
    			else
    				strTemp=server.htmlencode(str)
    				strTemp=replace(strTemp,chr(10),"<br>")
    				strTemp=replace(strTemp," ","&nbsp")
    				strTemp=replace(strTemp,chr(9),"&nbsp&nbsp&nbsp&nbsp")
    			end if
    			fullstr=strTemp
    		end property
    	'=============================================================
    	' 函 数 名:j_mail
    	' 功能描述:用jmail发送邮件
    	' 输入参数:email:发送邮件地址,Subject:发送的标题,HTMLBody:发送的html格式的内容,Body:文件内容
    	' 返 回 值:无
    	' 创建日期:2008-8-21
    	' 修改日期:2008-8-21
    	' 作    者:李瑞斌
    	' 附加说明:
    	'==============================================================
    	sub j_mail(ByVal email,ByVal Subject,ByVal HTMLBody,ByVal Body)
    	Dim JMail, contentId
    	Set JMail = Server.CreateObject("JMail.Message") 
    	
    	JMail.Charset = "utf-8" ' 邮件字符集,默认为"US-ASCII"
    	' JMail.ISOEncodeHeaders = False ' 是否进行ISO编码,默认为True
    	
    	' 发送者信息(可用变量方式赋值)
    	JMail.From = Global_mail ' 发送者地址
    	JMail.FromName = Global_mail_FromName ' 发送者姓名
    	JMail.Subject =Subject  ' 邮件主题
    	
    	' 身份验证
    	JMail.MailServerUserName = Global_mail ' 身份验证的用户名
    	JMail.MailServerPassword = Global_mail_pwd ' 身份验证的密码
    	
    	' 设置优先级,范围从1到5,越大的优先级越高,3为普通
    	JMail.Priority = 3
    	
    	'JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
    	
    	' 加入一个收件人【变量email:收件人地址】可以同一语句重复加入多个
    	JMail.AddRecipient(email)
    	
    	' 加入附件【变量filename:附件文件的绝对地址,确保用户IUSR_????有访问的权限】
    	' 【参数设置是(True)否(False)为Inline方式】
    	'contentId = JMail.AddAttachment (filename, True)
    	
    	' 邮件主体(HTML(注意信件内链接附件的方式))
    	JMail.HTMLBody = HTMLBody
    	
    	' 邮件主体(文本部分)
    	JMail.Body = Body
    	
    	' 发送【调用格式:objJMail.Send([username:password@]SMTPServerAddress[:Port])】
    	if JMail.Send(Global_mail_stmp) then
    		j_mail=true
    	else
    		j_mail=false
    	end if
    	
    	' 关闭并清除对象
    	JMail.Close()
    	Set JMail = Nothing
    	end sub
    	
    	'===========================================
    	' 函 数 名:GetUrl
    	' 功能描述:获取当前Url参数的函数
    	' 输入参数:无
    	' 返 回 值:当前的URL地址
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:
    	' 附加说明:用在循环前面
    	'===========================================
    	Public property get  GetUrl()
    	  Dim ScriptAddress,Servername,qs
    	  ScriptAddress = CStr(Request.ServerVariables("SCRIPT_NAME"))
    	  Servername = CStr(Request.ServerVariables("Server_Name"))
    	  qs=Request.QueryString
    	  if qs<>"" then
    	  GetUrl ="http://"& Servername & ScriptAddress &"?"&qs
    	  else
    	  GetUrl ="http://"& Servername & ScriptAddress
    	  end if
    	End property
    
    
    	'=============================================================
    	' 函 数 名:DB_Page
    	' 功能描述:分页大小设置
    	' 输入参数:n,每页的大小
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:
    	' 附加说明:用在循环前面
    	'==============================================================
    	Public function DB_Page(ByVal n)
    	
    	 MaxPerPage=n
    	
    	 '取得页数,并判断用户输入的是否数字类型的数据,如不是将以第一页显示
    	 dim text,checkpage,i
    	 text="0123456789"
    	 Rs.PageSize=MaxPerPage
    	 for i=1 to len(request.QueryString("page"))
    
    	   checkpage=instr(1,text,mid(request.QueryString("page"),i,1))
    	   if checkpage=0 then
    		  exit for 
    	   end if
    	 next
    	zpage=Rs.PageCount
    	 If checkpage<>0 then
    		  If NOT IsEmpty(request.QueryString("page")) Then
    			CurrentPage=Cint(request.QueryString("page"))
    			If CurrentPage < 1 Then CurrentPage = 1
    			If CurrentPage > zpage Then CurrentPage = zpage
    		  Else
    			CurrentPage= 1
    		  End If
    		  If not Rs.eof Then Rs.AbsolutePage = CurrentPage end if
    	 Else
    	   CurrentPage=1
    	 End if	
    	end function
    	
    	'=============================================================
    	' 函 数 名:pagelist
    	' 功能描述:根据传入的SQL语句设置分页
    	' 输入参数:n,每页的大小
    	' 返 回 值:无
    	' 创建日期:2008-9-6
    	' 修改日期:2011-9-29
    	' 作    者:
    	' 附加说明:用在循环前面
    	'==============================================================
    	sub pagelist(ByVal sql,ByVal n, ByVal f)
    	if (not isnull(f)) or f then 
    		dim page_sql
    		dim t
    		page_sql=LCase(sql)
    		page_sql=left(page_sql,InStr(page_sql,"order by")-1)
    		page_sql="select count(*) as num "& Right(page_sql,len(page_sql)-Instr(page_sql,"from")+1)
    
    		dim rs_page
    		set rs_page=conn.Execute(page_sql)
    		rscount=rs_page(0) '总记录数
    		rs_page.close
    		set rs_page=nothing
    		'得到总页数
    		zpage=rscount\n
    		if rscount mod n>0 then zpage=zpage+1
    		
    		 '取得页数,并判断用户输入的是否数字类型的数据,如不是将以第一页显示
    		 If IsNumeric(request.QueryString("page"))<>0 then
    			  If NOT IsEmpty(request.QueryString("page")) Then
    				CurrentPage=Cint(request.QueryString("page"))
    				If CurrentPage < 1 Then CurrentPage = 1
    				If CurrentPage > zpage Then CurrentPage = zpage
    			  Else
    				CurrentPage= 1
    			  End If
    		 Else
    		   CurrentPage=1
    		 End if
    		 sql=Replace(sql,"select", "select top " & n*CurrentPage)
    		 if ExecSql(sql) then 
    			 Rs.PageSize=n
    			 rs.AbsolutePage=CurrentPage
    		end if
    	else
    		if ExecSql(sql) then 
    			 Rs.PageSize=n
    			 zpage=Rs.PageCount
    			 rscount=Rs.recordcount '总记录数
    			 If IsNumeric(request.QueryString("page"))<>0 then
    				  If NOT IsEmpty(request.QueryString("page")) Then
    					CurrentPage=Cint(request.QueryString("page"))
    					If CurrentPage < 1 Then CurrentPage = 1
    					If CurrentPage > zpage Then CurrentPage = zpage
    				  Else
    					CurrentPage= 1
    				  End If
    				  If not Rs.eof Then Rs.AbsolutePage = CurrentPage end if
    			 Else
    			   CurrentPage=1
    			 End if	
    			 rs.AbsolutePage=CurrentPage
    		end if
    		
    	end if
    	end sub 
    	
    	'=============================================================
    	' 函 数 名:show_Page_all
    	' 功能描述:显示上一页、下一页,并显示全选和删除所选择
    	' 输入参数:del_page,删除所选择时跳转的页名
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:
    	' 附加说明:用在循环前面
    	'==============================================================
    	function show_page_all(ByVal del_page)
    	%>
    <style type="text/css">
    <!--
    .db {
    	font-size: 9pt;
    	color: #000000;
    }
    -->
    </style>
                                                                
    	<table width="100%" height="20" border="0" align="center" cellpadding="0" cellspacing="0">
    		  <tr>
    		  <td width="23%" style="font-size: 9pt">全选/反选
    			<input name="all1" type="checkbox" id="selectall" value="true" onClick="select_all(this)">   
    			<a style="cursor:hand;" onClick="del_selected('<%=del_page%>')" class="hei">删除所选择</a>
    			</td>
    		   <td width="67%" align="center" style="font-size: 9pt">              <%
    				If CurrentPage = 1 Then
    					Response.Write("第一页 ")
    				Else 
    					Response.Write(" <a href=javascript:gotopage(1) class=hei>第一页</a> ")
    				End If
    			  If CurrentPage = 1 Then
    				Response.Write(" 上一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("& CurrentPage-1 & ") class=hei>上一页</a> ")
    			  End If
    			  If CurrentPage = zpage Then
    				Response.Write(" 下一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("& CurrentPage+1 & ") class=hei>下一页</a> ")
    			  End If
    			  If CurrentPage = zpage Then
    				Response.Write(" 最后一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("&zpage &") class=hei>最后一页</a> ")
    			  End If
    			  response.Write "&nbsp;&nbsp;&nbsp;<font color=red>"&rs.PageSize&"</font>条/页&nbsp;共<font color=red>"&rscount&"</font>条记录"
    			  response.Write "&nbsp;&nbsp;&nbsp;<font color=red>"&CurrentPage&"</font>/<font color=red>"&zpage&"</font>页"
    	%> 
    		</td>
    		<td width="10%" height="33">
    			  <% if rs.pagesize> 0 then %>
    			  <select size="1" name="gopage" onChange="gotopage(this.value)">
    				<% for i=1 to zpage %>
    				<option value="<%=i%>"<%if i=CurrentPage then response.Write  "  selected"%>><%=i%></option>
    				<%next%>
    			  </select>
    			  <% end if %></td>
    		 </tr>
    	</table>
    	<%  
    	end function
    	
    	'=============================================================
    	' 函 数 名:show_Page_small
    	' 功能描述:只显示上一页,下一页
    	' 输入参数:
    	' 返 回 值:无
    	' 创建日期:2005-9-23
    	' 修改日期:2005-9-23
    	' 作    者:
    	' 附加说明:用在循环前面
    	'==============================================================
    	function show_page_small()
    		If CurrentPage = 1 Then
    			Response.Write(" 上一页 ")
    		Else 
    			Response.Write(" <a href=javascript:gotopage("& CurrentPage-1 & ") class=hei>上一页</a> ")
    		End If
    		If CurrentPage = zpage Then
    			Response.Write(" 下一页 ")
    		Else 
    			Response.Write(" <a href=javascript:gotopage("& CurrentPage+1 & ") class=hei>下一页</a> ")
    		End If
    	end function
    	
    	'=============================================================
    	' 函 数 名:show_Page
    	' 功能描述:显示上一页,下一页
    	' 输入参数:无
    	' 返 回 值:无
    	' 创建日期:2005-9-16
    	' 修改日期:2005-9-16
    	' 作    者:
    	' 附加说明:用在循环前面
    	'==============================================================
    	function show_page()
    	%>                                                            
    	<table width="90%" height="20" border="0" align="center" cellpadding="0" cellspacing="0">
    		  <tr>
    		   <td width="67%" align="center"><%
    				If CurrentPage = 1 Then
    					Response.Write("第一页 ")
    				Else 
    					Response.Write(" <a href=javascript:gotopage(1) class=hei>第一页</a> ")
    				End If
    			  If CurrentPage = 1 Then
    				Response.Write(" 上一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("& CurrentPage-1 & ") class=hei>上一页</a> ")
    			  End If
    			  If CurrentPage = zpage Then
    				Response.Write(" 下一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("& CurrentPage+1 & ") class=hei>下一页</a> ")
    			  End If
    			  If CurrentPage = zpage Then
    				Response.Write(" 最后一页 ")
    			  Else 
    				Response.Write(" <a href=javascript:gotopage("&zpage &") class=hei>最后一页</a> ")
    			  End If
    			  response.Write "&nbsp;&nbsp;&nbsp;<font color=red>"&rs.PageSize&"</font>条/页&nbsp;共<font color=red>"&rscount&"</font>条记录"
    			  response.Write "&nbsp;&nbsp;&nbsp;<font color=red>"&CurrentPage&"</font>/<font color=red>"&zpage&"</font>页"
    	%> 
    		</td>
    		<td width="10%" height="33">
    			  <% if rs.pagesize> 0 then %>
    			  <select size="1" name="gopage" onChange="gotopage(this.value)">
    				<% for i=1 to zpage %>
    				<option value="<%=i%>"<%if i=CurrentPage then response.Write  "  selected"%>><%=i%></option>
    				<%next%>
    			  </select>
    			  <% end if %></td>
    		 </tr>
    	</table>
    	<%  
    	end function
    	
    	'===========================================
    	' 函 数 名:getpage
    	' 功能描述:根据页码生成当前页的翻页地址
    	' 输入参数:页码
    	' 返 回 值:当前页的翻页地址
    	' 创建日期:2008-9-6
    	' 修改日期:2011-9-29
    	' 作    者:李瑞斌
    	' 附加说明:
    	'===========================================
    	Function getpage(ByVal httppage)
    	server_back=geturl()
    	if instr(server_back,"?")>1 then 
    		if instr(server_back,"page")>1 then 
    			server_back=left( server_back,instr(server_back,"page")-1)
    			pagestr="page="&httppage
    			getpage=server_back&pagestr
    		else
    			getpage=server_back&"&page="&httppage
    		end if
    	else
    		getpage=server_back&"?page="&httppage
    	end if
    	End Function
    	
    	'=============================================================
    	' 函 数 名:show_page_num_en
    	' 功能描述:显示分页列表
    	' 输入参数:pagenum显示分页的个数
    	' 返 回 值:无
    	' 创建日期:2008-9-6
    	' 修改日期:2011-9-29
    	' 作    者:
    	' 附加说明:
    	'==============================================================
    	'英文显示翻页
    	'按pagenum显示页数
    	sub show_page_num_en(ByVal pagenum)
    	If CurrentPage <> 1 Then
    		Response.Write(" <a class='catalink' href="&getpage(CurrentPage-1 )&" class=hei><<< &nbsp;Previous</a> ")
    	End If
    	if CurrentPage=zpage then
    		i= CurrentPage-pagenum
    	else
    		i=CurrentPage-cint(pagenum/2)
    	end if
    	if i<=0 then i=1
    	
    	k=CurrentPage+cint(pagenum/2)
    	if k> zpage then k=zpage
    	if k<pagenum then k=pagenum
    	do while (i<=zpage and i<=k)
    		if i=CurrentPage then 
    			response.Write(" <a class='catalink' href="&getpage(i)&"><span style='color:#ff0000;'>"&i&"</span></a> ")
    		else
    			response.Write(" <a class='catalink' href="&getpage(i)&">"&i&"</a> ")
    		end if
    		i=i+1
    	loop
    	If CurrentPage <> zpage Then
    		Response.Write(" <a href="&getpage(CurrentPage+1)&" class='catalink'>Next&nbsp;>>></a> ")
    	End If
    	end sub
    	
    	'=============================================================
    	' 函 数 名:show_page_num_all
    	' 功能描述:显示所有分页列表
    	' 输入参数:pagenum显示分页的个数
    	' 返 回 值:无
    	' 创建日期:2008-9-6
    	' 修改日期:2011-9-29
    	' 作    者:
    	' 附加说明:
    	'==============================================================
    	
    	sub show_page_num_all()
    	If CurrentPage <> 1 Then
    		Response.Write(" <a class='catalink' href="&getpage(CurrentPage-1 )&" class=hei><<< &nbsp;Previous</a> ")
    	else
    		Response.Write(" <a class='catalink' href="&getpage(CurrentPage)&" class=hei><<< &nbsp;Previous</a> ")
    	End If
    	i=1
    	do while (i<=zpage)
    		if i=CurrentPage then 
    			response.Write(" <a class='catalink' href="&getpage(i)&"><span style='color:#ff0000;'>"&i&"</span></a> ")
    		else
    			response.Write(" <a class='catalink' href="&getpage(i)&">"&i&"</a> ")
    		end if
    		i=i+1
    	loop
    	If CurrentPage <> zpage Then
    		Response.Write(" <a href="&getpage(CurrentPage+1)&" class='catalink'>Next&nbsp;>>></a> ")
    	else
    		Response.Write(" <a href="&getpage(CurrentPage)&" class='catalink'>Next&nbsp;>>></a> ")
    	End If
    	end sub
    
    End Class
    %>

    以后会写这个类的用法,如有高手请指点。

  • 相关阅读:
    BZOJ 2654: tree
    洛谷P1972[SDOI2009]HH的项链
    洛谷 P3833 [SHOI2012]魔法树
    P2167 [SDOI2009]Bill的挑战
    洛谷 P2145 [JSOI2007]祖码
    洛谷 P4170 [CQOI2007]涂色
    P2024 [NOI2001]食物链
    USACO 2012 December ZQUOJ 24122 Scrambled Letters(二分)
    USACO 2012 December ZQUOJ 24128 Wifi Setup(动态dp)
    2013长春网赛1009 hdu 4767 Bell(矩阵快速幂+中国剩余定理)
  • 原文地址:https://www.cnblogs.com/binbin695/p/2196241.html
Copyright © 2020-2023  润新知