统计在线人数...

Flash处理外部XML文档数据

[ 来源:不详 | 作者:chooseflash | 时间:2007-9-11 下午 10:49:13 | 浏览:统计中... ]


在Flash中还是跟实验5一样调用.

实验7:

重新做实验3,不过XML文档数据从数据库中调用.
用户登录不推荐使用XML.推荐在ASP或其它语言中,做隐式判断.
了解:
ASP请点:
JSP请点:

这个还是要讲的.便于理解下一个实验.

数据库:

打开Data.mdb数据库.新建二个表.
表名分别为:
--------------------------------------------------
post
user
--------------------------------------------------

post表中:
输入二个字段:分别为:
--------------------------------------------------
postID 自动编号
postName 文本
--------------------------------------------------
在 postID 字段点右键-->主键,保存.
打开post表,在postName字段输入二条数据,数据分别为:
--------------------------------------------------
经理
职员
--------------------------------------------------
保存.

user表中:
输入四个字段,分别为:
--------------------------------------------------
userID 自动编号
username 文本
password 文本
postName 文本
--------------------------------------------------
在 userID 字段点右键-->主键,保存.
打开user表,分别在username,password,postName字段输入四条数据,数据分别为:
--------------------------------------------------
  username                password         postName
MChooseFlash01                           MChooseHappiness                     经理
MChooseFlash02                           MChooseHappiness                     经理
EChooseFlash01                            EChooseHappiness                      职员
EChooseFlash02                            EChooseHappiness                      职员
--------------------------------------------------
保存.关闭数据库.

数据库到这可以了.下面是ASP:

打开记事本,输入下面的代码,然后保存为 xml-007.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'xml-007.asp
dim conn,rs,sqlcom,post_arr
'设置文档类型.
Response.ContentType="text/xml"
'输出XML文档.
Response.Write("<?xml version='1.0' encoding='gb2312'?>")
Response.Write("<!--xml-007.asp-->")
Response.Write("<UserDataList>")
'创建连接对象.
Set conn=Server.CreateObject("Adodb.Connection")
'这里用字符串方法连接数据库.
'"Provider=Microsoft.Jet.OLEDB.4.0; 这个是数据库驱动.
'Data Source="Server.MapPath("Data.mdb") 数据库文件的相对路径.
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("Data.mdb")
'创建记录集对象.
Set rs=Server.CreateObject("Adodb.RecordSet")
'查询数据库的sql语句.
sqlcom="select * from post"
'执行sql语句.
'1,1 只读.
'1,3 可读可写.
rs.Open sqlcom,conn,1,1
'重定义数组.
'rs.RecordCount 记录集中总的记录数.
Redim post_arr(rs.RecordCount)
'用for语句将post表中的数据循环出来.
'Ubound数组的最大上标.
for i=1 to Ubound(post_arr)
    '将post表中的postName字段中的值存入数组post_arr.
    post_arr(i)=rs("postName")
    '移到下一条数据.
    rs.MoveNext
Next
'这里用了嵌套for语句,
'第一个for j是将post_arr数组中的数据读出来.也就是post表中的数据.
'第二个for k是将user表中的数据读出来.
'用for语句将post_arr数组中的数据循环出来.
for j=1 to Ubound(post_arr)
    '关闭记录集.
    rs.Close
    '查询数据库的sql语句.
    '根据post_arr(j)数组中的值为条件来重复执行sql语句.
    'user是SQL中的关键字.要用[]中括号括起来.
    sqlcom="select * from [user] where post='"&post_arr(j)&"'"
    '执行sql语句.
    rs.Open sqlcom,conn,1,1
    '输出XML节点.
    Response.Write("<Post post='"&post_arr(j)&"'>")
    '用for语句将user表中的数据循环出来.
    for k=1 to rs.RecordCount
        '输出XML节点.
        Response.Write("<UserData username='"&rs("username")&"' password='"&rs("password")&"' />")
        '移到下一条数据.
        rs.MoveNext
    Next
    '结束Post节点.
    Response.Write("</Post>")
Next
'结束UserDataList节点.
Response.Write("</UserDataList>")
'释放记录信对象.
Set rs=nothing
'关闭连接.
conn.Close
'释放连接对象.
Set conn=nothing
%>

在IIS中浏览xml-007.asp文件.跟实验3中的xml文档大致一样.
打开实验3中的Flash文件,把Flash中的加载xml地址换成:

myxml.load("http://localhost/xml/xml-007.asp?ran="+Math.random(9999));

然后测试影片.效果跟实验3一样.

实验8:

怎么都讲些不实用的东西啊?别急.下面就开始讲实用的.
这个实验比较有实用价值.就如蓝色网站的侧边菜单来说.
如图:

放置的内容是有限的.这个实验就可以用来扩展侧边菜单.
利用Accordion组件做容纳多内容的网站侧边菜单.
效果图:

下面开始:

数据库:

打开Data.mdb数据库.新建二个表.
表名分别为:
--------------------------------------------------
column
columnData
--------------------------------------------------

column表中:
输入三个字段:分别为:
--------------------------------------------------
columnID 自动编号
columnName 文本
columnIndex 数字
--------------------------------------------------
在 columnID 字段点右键-->主键,保存.
打开column表,分别在columnName,columnIndex字段输入五条数据,数据分别为:
--------------------------------------------------
columnName         columnIndex
专题栏目-01              0
专题栏目-02              1
专题栏目-03              2
专题栏目-04              3
专题栏目-05              4

--------------------------------------------------
保存.

columnData表中:
输入四个字段,分别为:
--------------------------------------------------
cdID 自动编号
cdName 文本
cdURL 文本
columnIndex 数字
--------------------------------------------------
在 cdID 字段点右键-->主键,保存.
打开columnData表,分别在cdName,cdURL,columnIndex字段输入下面的数据:
--------------------------------------------------
  cdName                                      cdURL                                                 columnIndex
ChooseFlash-01.1                     http://www.happiness01.com                         0
ChooseFlash-01.2                     http://www.happiness02.com                         0
ChooseFlash-01.3                     http://www.happiness03.com                         0
ChooseFlash-01.4                     http://www.happiness04.com                         0
ChooseFlash-01.5                     http://www.happiness05.com                         0

ChooseFlash-02.1                     http://www.happiness01.com                         1
ChooseFlash-02.2                     http://www.happiness02.com                         1
ChooseFlash-02.3                     http://www.happiness03.com                         1
ChooseFlash-02.4                     http://www

上一页  [1] [2] [3] [4] [5] [6]  下一页

共有0人参与评价,平均得分:0分
评论内容只代表网友观点,与本站立场无关! 查看完整内容
   

当前在线人数
QQ:748838 MSN:allen_xia#msn.com E-mail:allenxia666#126.com QQ群:站长联盟北方区-北京(28200145) 站长联盟南方区-上海(67713522)