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

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

初试WAP之wml+ASP查询


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 141 ::
收藏到网摘: 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/>