首页 | 新闻 | 短信 | 邮件 | 商城 | 搜索 | 社区 | 在线 | 企业
搜狐首页 >> IT频道首页 >> 网狐教程 >> 语言教程 >> ASP
用FLASH结合ASP制做计数器
2001-09-14 13:23  作者: Blackflash  转自: 5D精英网

    各位网友大家好,在我们访问网站总是可以看到各种形式的计数器,它可以用来统计网站受欢迎的程度。现在有很多网站提供免费的计数器,如果自己能动手做一个不是更好吗?所以今天我就教大家通过FLASH结合ASP来制作的计数器。:)

  (1) 首先,新建一个文件,把当前层命名为“背景”,可以自己选择颜色,你也可以在些层中加入Movie clip,这样可以让你的计数层更加动感,这可是文本计数器不可能实现的。再新建一层,命名为“数字”,用来存放计数器的显示数字。

  (2) 按Ctrl+F8新建一个“Movie Clip”,命名为“number”。在时间线中插入10桢,每一桢填写一个数字(从0-9),并用Ctrl+K来调整位置。如图:
 

  回到背景层中,用Ctrl+L打开庫。拖出6个“number”符号,用Ctrl+K调整位置,让它们之间的距离保持相等。打开菜单Modify >Instance面板,把它们从左到右命名为“100000”“10000”“1000”“100”“10”“1”。如图:
 

   (3) 计数器是由数据庫来存放访问数记录的,每次打开时应该加上1位数字,所以我们就需要创建数据庫文件。首先启动Microsoft Access(本人使用的是Access97),新建一个数据庫,在新表中建一个字段“Count”,类型为整数。把这个表也命名为“count”。
 

   打开任务栏中的PWS图标的设置窗口,把计数器所在的目录定义为“counter”的虚拟目录,并允许执行脚本程序。在Windows的控制面板里双击图标,为数据庫加一个系统DSN,命名为“counter”。
 

   (4) 现在让我们回到FLASH中,新建层“Action”,用来存放脚本程序。选中第一桢,在脚本面板中写下Aciton(我们可以按面板右边的小三角转到Expert mode模式):
 

count = “12345”;
tellTarget (“/1”) {
  stop ();
j = /:count.length;
i = /:count.charAt(j-1);
gotoAndStop (++i);
}

tellTarget (“/10”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-2);
  gotoAndStop (++i);
}

tellTarget (“/100”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-3);
  gotoAndStop (++i);
}

tellTarget (“/1000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-4);
  gotoAndStop (++i);

}

tellTarget (“/10000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-5);
  gotoAndStop (++i);
}

tellTarget (“/100000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-6);
  gotoAndStop (++i);
}
 


   以上的脚本程序中,我们把变量count值设为“12345”。现在可以用Ctrl+Enter用来测试是否能正确的把一个内容为数字的字符串转换为用movie clip表示图形数字。如果没有问题接下来我们就开始编写ASP程序,我们可以使用UltrEdit32或UltraDev4等软件来进行编写:
 

  (5) 建立新文件,命名为“counter.asp”。工作流程应该是通过系统DSN建立与数据庫“counter.mdb”的连接,取出存在count表里的数字值,并把这个值另加1以后存回数据庫,最后把没有加1的数值返回给脚本程序,存在count变量中。按照这样的思路,“counter.asp”的代码应该这样写:
 

< %
count = 0
Set objConn=Server.CreateObject(“ADODB.Connection”)
ObjConn.Open(“DSN=counter”)
StrQuery=”SELECT * FROM count”
Set objRs=objConn.Execute(strQuery)
Count=objRs(“count”)
StrQuery=”UPDATE count SET count=” & count+1
ObjConn.Execute (strQuery)
ObjRs.Close
Set objRs=Nothing
ObjConn.Close
Set objConn=Nothing
Response.Write(“count=”&count)
% >


   写好之后我们就可以用浏览器来不断刷新来对它进行测试,看是否每次数值会增加1。

  (6) 最后我们要做的就是把ASP程序和Flash脚本程序结合起来。回到FLASH中在时间线上选中“Action”层和“数字”层的第1桢向后拖到第3桢。然后在“Action”层第1、2桢用F6插入关键桢。在“数字”层第1桢插入关键桢,第2桢用F5沿用。在“背景”层中第3桢用F5沿用第1桢内容。

  选中“Aciton”层的第1桢里写下: count = 0
 

tellTarget (“1”) {
  gotoAndstop (1);
}

tellTarget (“10”) {
  gotoAndstop (1);
}

tellTarget (“100”) {
  gotoAndstop (1);
}

tellTarget (“1000”) {
  gotoAndstop (1);
}

tellTarget (“10000”) {
  gotoAndstop (1);
}

tellTarget (“100000”) {
  gotoAndstop (1);
}

loadVariables (“counter.asp”,””);


   意思是程序使每一个数字显示为“0”,在最后调整用”counter.asp”。原来的脚本要新的增加判断,所以要对它进行修改:
 

if (count <> 0) {
  tellTarget (“/1”) {
  stop ();
j = /:count.length;
i = /:count.charAt(j-1);
gotoAndStop (++i);
}

tellTarget (“/10”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-2);
  gotoAndStop (++i);
}

tellTarget (“/100”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-3);
  gotoAndStop (++i);
}

tellTarget (“/1000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-4);
  gotoAndStop (++i);
}

tellTarget (“/10000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-5);
  gotoAndStop (++i);
}

tellTarget (“/100000”) {
  stop ();
  j = /:count.length;
  I = /:count.charAt(j-6);
  gotoAndStop (++i);
}

stop ();
   } else {
gotoAndPlay (2);
   )

  到这里计数器就做好了,可以把它放在浏览器中测试了。ASP和FLASH结合还可以做出很多的东西,大家可以充分发挥自己的想像力。
 

我来说两句 去相关俱乐部 发短信息
     为搜狐IT频道查错 得每日精彩大奖——点击可了解详细信息
搜狐IT频道:体察IT业界动态,传播IT时尚生活——点击进入 >>滚动新闻
相关连接
最热点击
去东京迪斯尼,过桃色圣诞节!

精彩相册[男][女]
活力社员[男][女]
魅力情人[男][女]
美女 天若有情
帅哥 不帅照脸踢
·和弦铃声:
原来的我 挥着翅膀的女孩
·疯狂音效:
On…个头啊 翠花,接电话…
订阅任何彩信服务
三天内退订不收费!!!
请发表您的看法
用户: 匿名发出
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。
留言:
*经营许可证编号:京ICP00000008号
*遵守《互联网电子公告服务管理规定》
*遵守《全国人大常委会关于维护互联网安全的规定》

新闻搜索
关键字:

三重奖励,百分百中奖
·找老乡尽在激情老乡会
·攒魔法袜子拿圣诞礼物
搜狐彩信最新推荐
·[] 眉飞色舞
·[] 厉鬼再现
热门词:必杀功 林忆莲
精彩订阅
新闻资讯
美国正式宣布萨达姆已被捕!
订阅 焦点新闻,了解详情


搜狐商城
·影视|徐静蕾我和爸爸
·音乐|欧美音乐盛典展
·书籍|黑客大曝光
·书籍|1元图书特卖场
·化妆|畅销精品优惠哦
·精品|zippo火机5折起
更多...


网站登录 - 搜狐招聘 - 广告服务 - 联系方式 - 保护隐私权 - 公司介绍
Copyright © 2003 Sohu.com Inc. All rights reserved. 搜狐公司 版权所有