教程的做用: 根据ASP从数据库中读取的变量,动态在FLASH内部添加和删除按扭。(其实只是抛砖引玉,读取的东西可以是很多的,做留言本也是如此吧!?)
开始:
首先声明,我第一次写这么多的程序,难免出错!高手请指点,不要笑我太猖狂就好了! 我们大家一起学习共同进步才是目的!谢谢!
ASP部分: <% added=request("added") del=request("del") action=request.QueryString("action") set conn=server.CreateObject ("adodb.connection") set rs=server.CreateObject ("adodb.recordset") dbpath=server.MapPath ("db1.mdb") connstr="Driver={Microsoft Access Driver (*.mdb)};dbq="&dbpath conn.Open connstr if (action <> "add" and action <>"added") then ''下面是读取数据库信息部分 sql="select * from shu where id=1" rs.open sql,conn,1,1 if rs.eof and rs.bof then else Response.Write "a=" & (RS("number")) response.Write "&eof=true" end if end if %> <% ''下面部分为删除按扭信息部分 if (action="add") then sql="select * from shu where id=1" rs.Open sql,conn,1,3 rs("number")=del rs.update response.write "ok=1" rs.close end if %> <% ''下面的部分是保存按扭信息部分 if (action="added") then sql="select * from shu where id=1" rs.Open sql,conn,1,3 rs("number")=added rs.update response.write "save=1" rs.close end if %> FLASH部分: 第一部分是初始化变量: eof = "false"; a=0; //按扭的初始数量 r = random(65500); loadVariables("read.asp?action=" add r, "");//添加随机数的目的是防止不同浏览器不无法刷新变量的(不过可能是画蛇添足,哈哈)第9贞: if (eof ne "true") { gotoAndPlay("read"); } 判断是否读取数据成功! 第十贞: a = Number(a); if (a == 0 or a<0) { a = 1; for (i=1; i<=a; i++) { _root.attachMovie("m"+i, "m"+i, i+1); if (i<=5) { eval("m"+i)._x = 200+i*eval("m"+i)._width; eval("m"+i)._y = 200; } if (i>5 and i<=10) { eval("m"+i)._x = i*eval("m"+i)._width-50; eval("m"+i)._y = 250; } } } else { for (i=1; i<=a; i++) { _root.attachMovie("m"+i, "m"+i, i+1); if (i<=5) { eval("m"+i)._x = 200+i*eval("m"+i)._width; eval("m"+i)._y = 200; } if (i>5 and i<=10) { eval("m"+i)._x = i*eval("m"+i)._width-50; eval("m"+i)._y = 250; } } } stop(); //根据数据库中按扭数量“a“的大小添加按扭,并且以5*2的顺序进行排序!加载按扭: on (release) { if (a<=10 and a>=1) { a =Number(a)+1; trace(a); _root.attachMovie("m"+a, "m"+a, a+1); if (a<=5) { eval("m"+a)._x = 200+a*eval("m"+a)._width; eval("m"+a)._y = 200; } if (a>5 and a<=10) { eval("m"+a)._x = a*eval("m"+a)._width-50; eval("m"+a)._y = 250; } } if (a>10) { _root.aa.attachMovie("wrong", "wrong", 1000); this.wrong._width = 600; this.wrong._height = 400; this.wrong._x = 225; this.wrong._y = 200; a=10 } } 根据A的数量进行在次加载按扭(这里只采用FLASH内部加载),如果超按扭数量超过10个,则停止加载并出现警告!删除按扭部分: on (release) { del = a-1; loadVariables("read.asp?action=add", "", "POST"); for(i=1;i<=a;i++){ removeMovieClip(eval("m"+i)); } gotoAndPlay("do_del");
}
//确定删除后A的值,并将其传送个ASP!但是此处需要清理FLASH内部A的数量,以防止FLASH内部没有刷新而造成删除后A的数量减少,但按牛数量没有减少的情况!保存按扭部分: on (release) { added = a; for(i=1;i<=a;i++){ removeMovieClip(eval("m"+i)); } loadVariables("read.asp?action=added", "", "POST"); gotoAndPlay("do_save"); }//将A的数值传给ASP 然后存到数据库中,此处也清空了FLASH内部A的值,原因同上!
作者:佚名 | 文章来源:本站原创 | 更新时间:2007-6-16 10:27:44
|
上一篇文章: 将ACCESS2000转化成SQL2000
下一篇文章: 通过ASP与ACCESS数据库建立连接 |
相关文章:
Flash cs3、Flex与asp、php通信代码 ASP实现网页打开任何类型文件都保存的方法 微软的Silverlight能取代flash吗 伪静态页面在asp中实现的方法 flash如何自动适应多种浏览器分辨率的几种方法 ASP.NET+Access环境下的数据库安全问题 ASP安全:ASP防注入解决方法整理 Flash mx 2004 时间轴控制命令的使用方法 mp3音乐文件不能导入FLASH的问题 用flash制作网页弹出窗口的方法
|