📄 result.asp
字号:
<!--#include file="clsThief.asp" -->
<%
On Error Resume Next
Response.ContentType="text/vnd.wap.wml;charset=utf-8" '定义输出类型
dim city,starstr,endstr,outstr,i
dim tempstr,select_from,to_from,array_temp,v1,v2,selectstr1,selectstr2
dim fromState,toState
city=request.Form("city")
fromState=request.Form("fromState")
toState=request.Form("toState")
starstr=URLDecode(request.Form("starstr"))
endstr=URLDecode(request.Form("endstr"))
set myThief=new clsThief
'判断传过来的查询值是否是数字,如果是数字,就说明是二次查询,取相应的地址
if IsNumeric(starstr)=true then
myThief.src="http://www.o.cn/newmap/busline.html?_flowId=linesByAddressDef&fromState="&fromState&"&toState="&toState&"&map="&city&"&clear=Y&from="&starstr&"&to="&endstr
else
myThief.src="http://www.o.cn/newmap/busline.html?_flowId=linesByAddressDef&map="&city&"&fromState=ADDRESS&toState=ADDRESS&from="&server.URLEncode(starstr)&"&to="&server.URLEncode(endstr)&"&x=13&y=3"
end if
myThief.steal("utf-8") '开始偷窃
outstr=myThief.value '取到抓回来的值
set myThief=nothing
'判断该页面是否含有<select name="from,如果有就说明,这是二次查询页面,否则是结果页面
if instr(outstr,"<select name=""from")<=0 then
'判断是否含有bus.gif这个图片,如果有就证明有城巴的结果内容
if instr(outstr,"bus.gif")>0 then
array_temp=split(outstr,"bus.gif"" width=""27"" height=""15"" />") '用这个标记形成数组
for i=1 to UBound(array_temp)
tempstr=array_temp(i)
tempstr=left(tempstr,instr(tempstr,"</p>"))
selectstr1=selectstr1&i&"."&tempstr&"。|" '把每条结果用selectstr1串起来
next
selectstr1=ReplaceTest(selectstr1) '过滤里面的wml标志
selectstr1=replace(selectstr1,"<","")
selectstr1=replace(selectstr1,"|","<br/>")
end if
'判断是否含有"共行驶",如果有就证明有的士的结果内容
if instr(outstr,"共行驶")>0 then
selectstr2=mid(outstr,instr(outstr,"共行驶"))
selectstr2=left(selectstr2,instr(selectstr2,"注意")-1)
selectstr2=ReplaceTest(selectstr2)
selectstr2=replace(selectstr2,"document.write(changeMeter(""","")
selectstr2=replace(selectstr2,"""));","")
end if
%>
<?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="max-age=0"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
</head>
<card id="Wapbusline" title="WAP公交路线查询">
<p align="left">
坐车方案结果如下:<br/>
=*=*=*=*=*=<br/>
<%
'判断是否找到结果
if len(selectstr1)<=0 and len(selectstr2)<=0 then
response.Write "不好意思,找不到,你要的结果!<br/>"
else
response.Write "城巴:<br/>"&selectstr1&_
"的士:<br/>1."&selectstr2&"<br/>"
end if
%>
=*=*=*=*=*=<br/>
(C)WapForum.cn<br/>
<a href="index.asp">[返回查询首页]</a>
</p>
</card>
</wml>
<%
else
tempstr=left(outstr,instr(outstr,"<select name=""to")+16) '取<select name="to以上的内容字符
array_temp=split(tempstr,"<option") '用<option形成数组,列来所有的选项出来
for i=1 to UBound(array_temp)
tempstr=array_temp(i)
v1=mid(tempstr,instr(tempstr,"""")+1)
v1=ReplaceTest2(left(v1,instr(v1,"""")-1))
v2=mid(tempstr,instr(tempstr,">")+1)
v2=ReplaceTest2(left(v2,instr(v2,"</")-2))
'response.Write v1&" "&v2&"<br/>"
selectstr1=selectstr1&"<option value="""&v1&""">"&v2&"</option>" '用selectstr1的选项串起来
next
tempstr=mid(outstr,instr(outstr,"<select name=""to")+16) '取<select name="to以下的内容字符
array_temp=split(tempstr,"<option") '用<option形成数组,列来所有的选项出来
for i=1 to UBound(array_temp)
tempstr=array_temp(i)
v1=mid(tempstr,instr(tempstr,"""")+1)
v1=ReplaceTest2(left(v1,instr(v1,"""")-1))
v2=mid(tempstr,instr(tempstr,">")+1)
v2=ReplaceTest2(left(v2,instr(v2,"</")-2))
'response.Write v1&" "&v2&"<br/>"
selectstr2=selectstr2&"<option value="""&v1&""">"&v2&"</option>" '用selectstr2的选项串起来
next
'取fromState属性的值
fromState=mid(outstr,instrrev(outstr,"fromState"))
fromState=mid(fromState,instr(fromState,"value=""")+7)
fromState=left(fromState,instr(fromState,"""")-1)
'取toState属性的值
toState=mid(outstr,instrrev(outstr,"toState"))
toState=mid(toState,instr(toState,"value=""")+7)
toState=left(toState,instr(toState,"""")-1)
%>
<?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="max-age=0"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
</head>
<card id="Wapbusline" title="WAP公交路线查询">
<p align="left">
该坐车方案,查找到出发地或目的地有多个,请在下拉框中选择。<br/>
=*=*=*=*=*=<br/>
从:<br/>
<select name="starkeyword" title="选择城市" ID="Select1">
<%=selectstr1%>
</select><br/>
到:<br/>
<select name="endkeyword" title="选择城市" ID="Select2">
<%=selectstr2%>
</select><br/>
<anchor>马上搜索<go href="Result.asp" method="post">
<postfield name="city" value="<%=city%>" />
<postfield name="fromState" value="<%=fromState%>" />
<postfield name="toState" value="<%=toState%>" />
<postfield name="starstr" value="$(starkeyword)" />
<postfield name="endstr" value="$(endkeyword)" />
</go></anchor><br/>
=*=*=*=*=*=<br/>
(C)WapForum.cn<br/>
<a href="index.asp">[返回查询首页]</a>
</p>
</card>
</wml>
<%
end if
array_temp=null
'url解码
Function URLDecode(str)
str = Replace(str, "+", " ")
For i = 1 To Len(str)
sT = Mid(str, i, 1)
If sT = "%" Then
If i+2 < Len(str) Then
sR = sR & _
Chr(CLng("&H" & Mid(str, i+1, 2)))
i = i+2
End If
Else
sR = sR & sT
End If
Next
URLDecode = sR
End Function
'过滤wml标志
function ReplaceTest(strContent)
dim re,Test
if len(trim(strContent))>0 then
Set re=new RegExp
re.Pattern="<.+?>"
re.IgnoreCase =false
re.Global=True
ReplaceTest=re.replace(strContent, "")
set re=Nothing
else
ReplaceTest=""
end if
end function
'过滤空格和换行
function ReplaceTest2(strContent)
dim Test1
Test1=replace(strContent," ","")
Test1=replace(Test1,Chr(13)+Chr(10),"")
ReplaceTest2=Test1
end function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -