该表包括如下几个字段
price(价格) shang_id(对应的商品ID) p_time(该价格的时间);具体数据请自行输入;现根据该价格信息生成某商品在某年某月的价格行情走势图(曲线图,非柱状图)。
<!--tu.asp开始-->
<% if request("tyr")="" or request("tmon")="" or request("shid")="" or not isnumeric(request("tyr")) or not isnumeric(request("tmon")) or not isnumeric(request("shid")) then
response.write "参数错误,请确认您输入了正确的网址。"
response.end
end if
dim conn,constr,db
db="test.mdb"
set conn=Server.CreateObject("ADODB.Connection")
constr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath(db)
conn.open constr
if err then
err.clear
conn.close
set conn=nothing
response.write "暂时无法访问数据库,请稍候再试。"
response.end
end if
'以上为连接数据库部分
set rstemp=conn.execute("select top 1 price,p_time from [pric] where shang_id="&request("shid")&" and year(p_time)="&request("tyr")&" and month(p_time)="&request("tmon")&" order by price desc")
ttop=rstemp(0)
set rs=server.createobject("adodb.recordset")
sql="select price,p_time,shang_id from [pric] where shang_id="&request("shid")&" and year(p_time)="&request("tyr")&" and month(p_time)="&request("tmon")&""
rs.open sql,conn,1,1
i=0
do while not rs.eof and i<=31
pric=rs("price")
i=i+1
k=200+80*i
j=cint(2200-(pric/ttop)*2000)
tzb=tzb&k&","&j&" "
rs.movenext
loop %>
<html xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<title>行情图</title>
<STYLE>
v/:* { Behavior: url(#default#VML) }
</STYLE>
</head>
<body topmargin="0" leftmargin="0">
<v:group ID="group1" style="WIDTH:240pt;HEIGHT:300pt" coordsize="2400,3000">
<v:line from="200,100" to="200,2100" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
<v:stroke StartArrow="classic"/>
</v:line>
<v:line from="200,2100" to="2680,2100" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
<v:stroke EndArrow="classic"/>
</v:line>
<v:rect style="WIDTH:3000px;HEIGHT:2400px" coordsize="21600,21600" fillcolor="white" strokecolor="black" />
<v:PolyLine filled="false" Points="<%=tzb%>" style="position:relative"/>
<v:stroke StartArrow="Oval" EndArrow="Classic" dashstyle="Dot" />
</v:PolyLine>
</group>
</body>
</html>
<!--tu.asp结束-->
该页网址后应跟上相应的参数tyr;tmon;shid分边表示所查询的年、月以及商品ID;例如:
test.asp?tyr=2004&tmon=10&shid=1
表示所查询的是ID为1的商品于2004年10月的价格走势图。
最终的图形显示效果如下: