WML学习之七 CGI编程
CGI编程
1)在WEB服务器上添加WML的MIME类型
对于IIS4,可在其管理器里的站点属性中加入新的MIME类型,后缀.wml和 MIME类型text/vnd.wap.wml。
对于PWS,可修改注册表,先在 HKEY_CLASSES_ROOT层加入主键.wml,再加入串值Content Type为text/vnd.wap.wml,然后在HKEY_LOCAL_MACHINE\Software\CLASSES\MIME\Database\Content Type\中加入主键text/vnd.wap.wml,再加入串值Extension为.wml。
以前提到的HDML也用类似的方法。
2)以http方式访问wml文件
在手机浏览器的URL栏里输入http://localhost/test.wml,就可以访问WML文件了。
3)CGI设计
和普通CGI变成的方式差不多,只是返回结果时,先要输出Content-Type为text/vnd.wap.wml,然后再输出WML内容。
test10.wml
---------------
?xml version="1.0"?>
!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="max-age=0"/>
/head>
card id="card0">
do type="accept" label="Input Name" name="do1">
go href="http://localhost/test.asp" method="post">
postfield name="uid" value="123456"/>
postfield name="uname" value="$(userName:esc)"/>
/go>
/do>
p>
NAME:input name="userName" title="User Name" type="text" format="*M" emptyok="false" maxlength="12"/>
/p>
/card>
test10.asp
---------------
%
uid=Request.Form("uid")
userName=Request.Form("uname")
Response.ContentType="text/vnd.wap.wml"
%>
?xml version="1.0"?>
!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
wml>
card>
p>
USERNAME:%=userName%>
USER__ID:%=uid%>
/p>
/card>
/wml>