您当前的位置:易搜源码站网络编程ASP编程 → 文章内容
RSS订阅

ASP+ACCESS+FLASH的程序制作方法

作者:佚名  来源:yscode.com整理  发布时间:2007-9-27 8:39:01

教程的做用:
根据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的值,原因同上!


文章评论 (评论内容只代表网友观点,与本站立场无关!)

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码