asp+access+wml网页编程:asp读取access数据分页输出到手机客户端

2008-3-23 寒川 网页编程

    早就想用手机浏览服务器中ACCESS数据库记录了。今天忙了一天,写了一个页面,贴出来分享一下,起抛砖引玉的作用。
1、数据库设计:
   采用access数据库,名称为data.mdb,表名称为:data,其中表包含三个字段,分别为:ID 数据类型为自动编号、Time 数据类型日期时间,默认值为now()、Test 数据类型为备注。为方便后续操作,预先在数据库中输入几十条记录。
2、数据库连接文件:conn.asp

程序代码
<%
    db="data.mdb"
        Set conn = Server.CreateObject("ADODB.Connection")
    connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath(""&db&"")
    conn.Open connstr
%>

3、分页显示记录文件:index.asp

程序代码
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%><%response.buffer=true%><%Response.ContentType = "text/vnd.wap.wml; charset=utf-8"%><!-- #include file="conn.asp" --><?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta http-equiv='Cache-Control' content='no-cache'/>
</head>
<card title="寒窗轩wap+asp+access教程"> 
<p mode='nowrap' >
<%
function encodestr(str)
    str=trim(str)
    if IsNull(str) then exit function
    str=replace(str,"<","&lt;")
    str=replace(str,">","&gt;")
    str=replace(str,"'","""")
    encodestr=replace(str,"  "," ")
end function
Set rs = Server.CreateObject("ADODB.Recordset")
sql="Select * from data order by id desc"
rs.open sql,conn,1,1
if rs.eof then
response.write("目前还没有数据记录")
else
Page=Int(Abs(Request("page")))
IF not IsNumeric(Request("page")) or IsEmpty(Request("page")) Then page=1
rs.pagesize = 5 '每页显示记录数
total = rs.RecordCount
mp = rs.pagesize
rs.absolutepage = page
i=0:k=0
do while not rs.eof and mp>0:k=k+1
%>
<%
if Request("page")="" then %>
<%=i+1%>.ID号码:<%=rs("id")%><br/><%=encodestr(rs("test"))%><br/>
<% else %>
<%=i+1+12*(Request("page")-1)%>.ID号码:<%=rs("id")%><br/><%=encodestr(rs("test"))%><br/>
<%
end if
i=i+1
mp=mp-1
rs.movenext
loop
if page>rs.pagecount then Response.redirect("index.asp?page="&rs.pagecount)
if page>1 then
response.Write("<a href='index.asp?page=1'>首页</a>")
response.Write(" <a href='index.asp?page="&page-1&"'>上页</a>")
end if
if page<rs.pagecount then
response.Write("<a href='index.asp?page="&page+1&"'>下页</a>")
response.Write(" <a href='index.asp?page="&rs.pagecount&"'>尾页</a>")
end if
end if
response.Write("<br/>总共"&total&"记录<br/> ")
rs.close
set rs=nothing
%>
</p>
</card>
</wml>

将上面三个文件放入同一目录,便可以用手机浏览了。
以上文件在附件中,请下载研究。

标签: html 编程 asp wap access wml

发表评论:

Powered by emlog 蜀ICP备12030225号

川公网安备 51042102000001号

sitemap