Flash新闻效果与数据库、XML的结合
作者:admin 日期:2007-03-30
哈哈,现在讲这个效果可能有点过时了,不过看到各大门户现在还用着这样的东东,应该是可以研究一下了。
很长时间没作ASP的东西了,现在整一个跟ACCESS数据库相结合的Flash新闻图片转换效果,还真是费了点心机.还好,整出来了,真是有点愚昧啊,原来Js里面也可以写ASP代码的.[em09]
我先把代码整出来
描述一下:
<%
dim conn
dim connstr
on error resume next
connstr="DBQ="+server.mappath("../test/test.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
%>
这段是连接数据库的,不用多说.
<%
sql="select top 5 * from news where homehot=0 and selectpic=1 order by NewsID desc"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
if not rs.eof then
for i=1 to 5
%>
数据库查询,找出头5条,并从头到尾读取记录出来,i是个变量,为下面的自定义变量作准备
imgUrl<%=i%>="pic/<%=rs("picurl")%>";
imgtext<%=i%>="<%if len(rs("title"))>=18 then response.write left(rs("title"),18)&"…" else response.write rs("title")%>"
imgLink<%=i%>=escape("shownews.asp?newsid=<%=rs("newsid")%>");
这里相对应的都是从数据库中的表news取出的来记录,相对应于imgUrl1,imgUrl2,imgUrl3,imgtext1,imgtext2.....这样的变量,通过I动态定义变量,这是很方便的不说,不用声明一下变量,当然,你要声明也可以的.
<%
rs.movenext
next
else
response.write "没有新闻"
end if
%>
循环,承接上面,单条记录逐条读取.
var focus_width=340;
var focus_height=220;
var text_height=20;
定义Flash的长宽高,以及新闻标题所占的高度,宽340pixes,高220pixes,字体占20pixes高.
var_height = focus_height+text_height;
var pics=imgUrl1+"|"+imgUrl2+"|"+imgUrl3+"|"+imgUrl4+"|"+imgUrl5;
var links=imgLink1+"|"+imgLink2+"|"+imgLink3+"|"+imgLink4+"|"+imgLink5;
var texts=imgtext1+"|"+imgtext2+"|"+imgtext3+"|"+imgtext4+"|"+imgtext5;
将从数据库中的相关字段的值合成一个变量值,中间用"|"隔开
document.write('
很长时间没作ASP的东西了,现在整一个跟ACCESS数据库相结合的Flash新闻图片转换效果,还真是费了点心机.还好,整出来了,真是有点愚昧啊,原来Js里面也可以写ASP代码的.[em09]
我先把代码整出来
复制内容到剪贴板 程序代码
描述一下:
<%
dim conn
dim connstr
on error resume next
connstr="DBQ="+server.mappath("../test/test.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
%>
这段是连接数据库的,不用多说.
<%
sql="select top 5 * from news where homehot=0 and selectpic=1 order by NewsID desc"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
if not rs.eof then
for i=1 to 5
%>
数据库查询,找出头5条,并从头到尾读取记录出来,i是个变量,为下面的自定义变量作准备
imgUrl<%=i%>="pic/<%=rs("picurl")%>";
imgtext<%=i%>="<%if len(rs("title"))>=18 then response.write left(rs("title"),18)&"…" else response.write rs("title")%>"
imgLink<%=i%>=escape("shownews.asp?newsid=<%=rs("newsid")%>");
这里相对应的都是从数据库中的表news取出的来记录,相对应于imgUrl1,imgUrl2,imgUrl3,imgtext1,imgtext2.....这样的变量,通过I动态定义变量,这是很方便的不说,不用声明一下变量,当然,你要声明也可以的.
<%
rs.movenext
next
else
response.write "没有新闻"
end if
%>
循环,承接上面,单条记录逐条读取.
var focus_width=340;
var focus_height=220;
var text_height=20;
定义Flash的长宽高,以及新闻标题所占的高度,宽340pixes,高220pixes,字体占20pixes高.
var_height = focus_height+text_height;
var pics=imgUrl1+"|"+imgUrl2+"|"+imgUrl3+"|"+imgUrl4+"|"+imgUrl5;
var links=imgLink1+"|"+imgLink2+"|"+imgLink3+"|"+imgLink4+"|"+imgLink5;
var texts=imgtext1+"|"+imgtext2+"|"+imgtext3+"|"+imgtext4+"|"+imgtext5;
将从数据库中的相关字段的值合成一个变量值,中间用"|"隔开
document.write('
评论: 0 | 引用: 87 | 查看次数: 43687
发表评论