变相怪杰 发表于 2015-1-16 23:22:51

ASP教程之如何在ASP内里创立统计图表

ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于WindowsNT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失;创立|统计|图表上面给出了一个通用的函数及其用例,请参考。<%
REM起首我们计划一个ShowCart函数,个中
REMaValues是一个数值数组
REMaLables是横坐标的标号
REMstrTitle是这个统计图的题目
REMstrXAxisLableX轴的标签
REMstrYAxisLableY轴的标签
SubShowChart(ByRefaValues,ByRefaLabels,ByRefstrTitle,ByRefstrXAxisLabel,ByRefstrYAxisLabel)
你能够任意改动的图形常数
单元是屏幕像素点
ConstGRAPH_WIDTH=450图形宽度
ConstGRAPH_HEIGHT=250图形
ConstGRAPH_BORDER=5坐标线宽度
ConstGRAPH_SPACER=2统计条之间的间隔
ConstTABLE_BORDER=0
变量声明
DimI
DimiMaxValue
DimiBarWidth
DimiBarHeight
获得aValues最年夜值
iMaxValue=0
ForI=0ToUBound(aValues)
IfiMaxValue<aValues(I)TheniMaxValue=aValues(I)
NextI
盘算每条图形的宽度
iBarWidth=(GRAPH_WIDTH(UBound(aValues)+1))-GRAPH_SPACER
入手下手画图
%>
<TABLEBORDER=<%=TABLE_BORDER%>CELLSPACING=0CELLPADDING=0>
<TR>
<TDCOLSPAN=3ALIGN=center><H2><%=strTitle%></H2></TD>
</TR>
<TR>
<TDVALIGN=center><B><%=strYAxisLabel%></B></TD>
<TDVALIGN=top>
<TABLEBORDER=<%=TABLE_BORDER%>CELLSPACING=0CELLPADDING=0>
<TR>
&nbsp;&nbsp;<TDROWSPAN=2>HEIGHT=<%=GRAPH_HEIGHT%>></TD>
<%
对数组一切数值举行轮回,绘制条形图!
&nbsp;ForI=0ToUBound(aValues)
iBarHeight=Int((aValues(I)/iMaxValue)*GRAPH_HEIGHT)
&nbsp;&nbsp;由于扫瞄器会疏忽0高度的条形图,以是用1取代!
&nbsp;IfiBarHeight=0TheniBarHeight=1
%>
<TDVALIGN=bottom>HEIGHT=<%=iBarHeight%>ALT=<%=aValues(I)%>></A></TD>
<%
&nbsp;NextI
%>
</TR>
<TR>
<TDCOLSPAN=<%=(2*(UBound(aValues)+1))+1%>><IMGSRC=http://www.163design.net/a/y/images/spacer_black.gifBORDER=0WIDTH=<%=GRAPH_BORDER+((UBound(aValues)+1)*(iBarWidth+GRAPH_SPACER))%>HEIGHT=<%=GRAPH_BORDER%>></TD>
</TR>
<%反省横坐标数组是不是无效!%>
<%IfIsArray(aLabels)Then%>
<TR>
<TD><!--留点空间--></TD>
<%ForI=0ToUBound(aValues)%>
<TD><!--留点空间--></TD>
<TDALIGN=center><FONTSIZE=1><%=aLabels(I)%></FONT></TD>
<%NextI%>
</TR>
<%EndIf%>
</TABLE>
</TD>
</TR>
<TR>
<TDCOLSPAN=2><!--使下一个TD元素居中--></TD>
<TDALIGN=center><BR><B><%=strXAxisLabel%></B></TD>
</TR>
</TABLE>
<%
EndSub
%>
<%
一个带有横坐标的条形图
ShowChartArray(6,10,12,18,23,26,27,28,30,34,37,45,55),_
Array("P1","P2","P3","P4","P5","P6","P7","P8","P9",_
"P10","P11","P12","P13"),"一连几个月的发卖额","X轴","Y轴"
空行
Response.Write"<BR>"&vbCrLf
Response.Write"<BR>"&vbCrLf
Response.Write"<BR>"&vbCrLf
机关一个由随机数构成的数组
DimI
DimaTemp(49)
Randomize
ForI=0to49
aTemp(I)=Int((50+1)*Rnd)
NextI
由随机数组天生的条形图
ShowChartaTemp,"这不是一个数组!","随机条形图","序号","随机数"
%></p>缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。

冷月葬花魂 发表于 2015-1-20 09:44:58

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

活着的死人 发表于 2015-1-25 10:18:41

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

莫相离 发表于 2015-2-2 21:37:12

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件

柔情似水 发表于 2015-2-8 06:26:46

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

再见西城 发表于 2015-2-24 13:04:42

学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。

愤怒的大鸟 发表于 2015-3-7 12:19:07

兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的

变相怪杰 发表于 2015-3-15 04:57:20

多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。

再现理想 发表于 2015-3-21 18:21:42

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
页: [1]
查看完整版本: ASP教程之如何在ASP内里创立统计图表