<% set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("shikuang.mdb")
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from jilu Order By id DESC ",conn,3,2'将数据准备好,下面开始使用数据了。。
Dim JPEG
Set JPEG = Server.CreateObject("Persits.JPEG")'这个是个画图控件
With JPEG
.Open Server.MapPath("DrawPoint.jpg")
Dim Width, Height
Width = JPEG.OriginalWidth
Height = JPEG.OriginalHeight
Dim i
Dim PI '圆周率
Dim RadiusArray '半径数组
Dim AngleArray '角度数组
Dim XArray '计算后的X坐标
Dim YArray '计算后的Y坐标
Dim Length '
dim font
PI = 3.1416
RadiusArray = Array("&rs("fw")&","&rs("fw1")&","&rs("fw2")&","&rs("fw3")&")'这里是数据库中的两个数字字段,如:123 230 140 400 我在这里直接读取数据库fw和fw1的字段时出现错误,说是类型不正确,这个数据到底怎么取值数据库中的值呢?
AngleArray = Array("&rs("jl")&", "&rs("jl1", "&rs("jl2", "&rs("jl3")&")'这里是数据库中的两个数字字段,如:20 40 50 90
font=array("&rs("sj")&","&rs("sj1")&","&rs("sj2")&","&rs("sj3")&")'这里是数据库中的两个数字字段,如:1 2 3 4
XArray = Array()
YArray = Array()
If UBound(RadiusArray) <> UBound(AngleArray) Then
Response.End
End If
For i = 0 To UBound(RadiusArray)
Length = UBound(XArray)
ReDim Preserve XArray(Length + 1)
ReDim Preserve YArray(Length + 1)
XArray(Length + 1) = Width/ 2 + RadiusArray(i) * Cos(((360 - AngleArray(i) + 90) * PI / 180))/2
YArray(Length + 1) = Height / 2 - RadiusArray(i) * Sin(((360 - AngleArray(i) + 90) * PI / 180))/2
Next
For i = 0 To UBound(XArray)
If i < UBound(XArray) Then
.Canvas.DrawLine XArray(i), YArray(i), XArray(i + 1), YArray(i + 1)
.Canvas.Circle XArray(i), YArray(i),5
.Canvas.Pen.Color=&HFFCC00
.Canvas.Print XArray(i), YArray(i), font(i),12
End If
Next
.Save Server.MapPath("DrawPoint2.jpg")
End With
Set JPEG = Nothing
%>
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("shikuang.mdb")
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from jilu Order By id DESC ",conn,3,2'将数据准备好,下面开始使用数据了。。
Dim JPEG
Set JPEG = Server.CreateObject("Persits.JPEG")'这个是个画图控件
With JPEG
.Open Server.MapPath("DrawPoint.jpg")
Dim Width, Height
Width = JPEG.OriginalWidth
Height = JPEG.OriginalHeight
Dim i
Dim PI '圆周率
Dim RadiusArray '半径数组
Dim AngleArray '角度数组
Dim XArray '计算后的X坐标
Dim YArray '计算后的Y坐标
Dim Length '
dim font
PI = 3.1416
RadiusArray = Array("&rs("fw")&","&rs("fw1")&","&rs("fw2")&","&rs("fw3")&")'这里是数据库中的两个数字字段,如:123 230 140 400 我在这里直接读取数据库fw和fw1的字段时出现错误,说是类型不正确,这个数据到底怎么取值数据库中的值呢?
AngleArray = Array("&rs("jl")&", "&rs("jl1", "&rs("jl2", "&rs("jl3")&")'这里是数据库中的两个数字字段,如:20 40 50 90
font=array("&rs("sj")&","&rs("sj1")&","&rs("sj2")&","&rs("sj3")&")'这里是数据库中的两个数字字段,如:1 2 3 4
XArray = Array()
YArray = Array()
If UBound(RadiusArray) <> UBound(AngleArray) Then
Response.End
End If
For i = 0 To UBound(RadiusArray)
Length = UBound(XArray)
ReDim Preserve XArray(Length + 1)
ReDim Preserve YArray(Length + 1)
XArray(Length + 1) = Width/ 2 + RadiusArray(i) * Cos(((360 - AngleArray(i) + 90) * PI / 180))/2
YArray(Length + 1) = Height / 2 - RadiusArray(i) * Sin(((360 - AngleArray(i) + 90) * PI / 180))/2
Next
For i = 0 To UBound(XArray)
If i < UBound(XArray) Then
.Canvas.DrawLine XArray(i), YArray(i), XArray(i + 1), YArray(i + 1)
.Canvas.Circle XArray(i), YArray(i),5
.Canvas.Pen.Color=&HFFCC00
.Canvas.Print XArray(i), YArray(i), font(i),12
End If
Next
.Save Server.MapPath("DrawPoint2.jpg")
End With
Set JPEG = Nothing
%>
if isNull(rs("fw")) then 这就是没数据了而且你读的是一个记录集,根据坐标画出一系列的点,你没有循环记录集,最多只能画出一个点。
sql="SELECT fw&'|'&fw1&'|'&fw2&'|'&jl3, fw&'|'&jl1&'|'&jl2&'|'&jl3, sj&'|'&sj1&'|'&sj2&'|'&sj3" _
&" FROM jilu ORDER BY id DESC"
response.write sql'检查一下SQL字串,看看格式有问题吗?rs.open sql,conn,1,1'将数据准备好,下面开始使用数据了。。RadiusArray = Split(rs(0),"|")
AngleArray = Split(rs(1),"|")
font=Split(rs(2),"|")
'do your things.......................
%>
当
RadiusArray = eval(" Array("&rs("fw")&","&rs("fw1")&","&rs("fw2")&","&rs("fw3")&") ")
AngleArray = eval(" Array("&rs("jl")&", "&rs("jl1", "&rs("jl2", "&rs("jl3")&") ")
font= eval(" array("&rs("sj")&","&rs("sj1")&","&rs("sj2")&","&rs("sj3")&") ")
这时还是报错,说表达式不正确,当使用一个时不报错,如 eval(" Array("&rs("fw")&")。使用多个数组时是不是eval用得不对还是数组连接的“,”不正确?