当前位置: 首页 > 图文教程 > 网络编程 > ASP > 初试WAP之wml+ASP查询

ASP
防止网站被采集的理论分析以及十条方法对策
Asp 操作Access数据库时出现死锁.ldb的解决方法
asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR
ASP 代码出现80040e14错误的解决方法
Asp 编码互转的研究和实现代码
asp fckeditor自定义上传文件的文件名
asp javascript picasa相册外链批量导出
asp MD5加密方式使用建议
asp javascript值的互相传递方法
ASP UTF-8编码下字符串截取和获取长度函数
asp vbcrlf是什么意思
ASP 相关文章或者相关产品
在Win2003 64位下ASP无法连接Access数据库
asp 得到动态数组中元素的个数
Session.TimeOut的最大取值是1440,超出会报错
Form Post提交容量大的数据
启动iis出现发生意外0x8ffe2740的解决方法
asp 实现当有新信息时播放语音提示的效果
asp 延时 页面延迟的三种方法
Asp 日期格式化问题

初试WAP之wml+ASP查询


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 211 ::
收藏到网摘: n/a

 

搞了这么多年计算机,第一次写文章到网上来!见笑了

程序目的:工作需要,查询企业注册资料的朋友太多了,省得麻烦,在网站上增加了查询功能,居然有人说没有电脑,没电脑也该有个手机吧。用手机查询这样随时随地都行,说干就干,做一个WAP查询,全用记事本写的。

数据库结构如下:

库名:data.mdb

表名:info

字段:id 、企业名称、住所、法定代表人……(这个省略号是等等的意思)

一、反馈页面 hello.asp

源码如下:

<%@ Language=VBScript %>
<% Response.ContentType="text/vnd.wap.wml" %>
<?xml version="1.0" encoding="gb2312"?>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/ wml_1.1.xml">

<wml>

<card id="qycx" title="上饶工商信息网">

<p>
请输入查询资料<input name="qycx" type="text" maxlength="16" />
<anchor title="确定">确定
<go href="qycx.asp" method="post">
<postfield name="qycx" value="$qycx"/>
</go>
</anchor>

<br/><br/>
上饶工商信息网
</p>

</card>

</wml>


二、信息接收 页面 qycx.asp

源码如下:

<%@ Language=VBScript %>
<% Response.ContentType = "text/vnd.wap.wml" %>
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/ wml_1.1.xml">

<wml>
<card id="qycx2" title="上饶工商信息网">

<p>
<%
qycx=request.FORM("qycx")
cx="企业名称 like '%"&qycx&"%' "

Set conn=Server.CreateObject("adodb.connection")
'conn.Open "dsn=qycxsjk;uid=;pwd=;database=data.mdb"
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("qycx.mdb")

sql="select * from info where "&cx&""
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
do while not rs.eof
%>
<%qymc=rs("企业名称")
id=rs("id")

%>

<a href="qycx2.asp?id=<%Response.write id%>" ><%Response.write qymc%></a>

<br/>
<%
rs.movenext
loop
rs.close
%>
<br/><br/>
上饶工商信息网
</p>

</card>

</wml>
<% Function uni(Chinese)
For i = 1 to Len (Chinese)
a=Mid(Chinese, i, 1)
uni=uni & "&#x" & Hex(Ascw(a)) & ";"
next
End Function
%>


=================================================
第二点评:看到这里,我有点汗,刚开始以“企业名称”做为关键字提交,后来才想到以ID为关键字进行查询避免了汉字提交的问题。这么基础一个问题,我居然琢磨了大半天。这里根据hello.asp提交的“企业名称”关键字查询得到所有“企业名称”字段中含有该关键字的企业全称(以免重复),做一个列表,点击将入第三个页面,即该企业详细资料。


三、qycx2.asp

源码如下:

<%@ Language=VBScript %>
<% Response.ContentType = "text/vnd.wap.wml" %>
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/ wml_1.1.xml">


<%
Set conn=Server.CreateObject("adodb.connection")
'conn.Open "dsn=qycxsjk;uid=;pwd=;database=data.mdb"
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("qycx.mdb")
%>

 

<wml>
<card id="qycx3" title="上饶工商信息网">
<p>
<%
name=request.querystring("id")

 

sql="select * from info where id="&name&""

set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
do while not rs.eof
%>
<%qymc=rs("企业名称")%>
企业名称:<%Response.write qymc%>
<br/>

<%zs=rs("住所")%>
住所:<%Response.write zs%>
<br/>

<%fddb=rs("法定代表人")%>
法定代表人:<%Response.write fddb%>
<br/>

<%zczb=rs("注册资本")%>
注册资本:<%
if left(zczb,1)="." then
Response.write "0"
else
end if
Response.write zczb%>万元
<br/>