我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 网络学院 > 图型图像 > FLASH > Flash+ASP联合打造投票程序
热门文章排行
热门文章排行 Photoshop制作精美的简历封面(10-12)
在Flash课件中正确调用SWF文件(11-25)
巧用Photoshop徒手绘制扇子(10-19)
CorelDRAW12循序渐进-制作文本效果(12-29)
消除文字勾边后产生毛刺的小技巧(06-14)
精采文章排行
精采文章排行 GIF动态图片的修改(11-07)
Q版人物绘制全过程(11-07)
Flash互动电子地图制作手册——入门(11-01)
Flash 8.0前瞻——揭开8 ball的薄面(10-24)
土人AS入门教程对象篇(10-24)
技术专题推荐
网管论坛交流
 

Flash+ASP联合打造投票程序 

作者:佚名   来源:Linux 宝库   点击:   日期:2006-11-25


-->
为了调查了解站点访问者对特定问题的立场,我们可以在站点中设置投票程序,站点访问者直接选择答案,程序自动对所有答案进行统计和显示.

  下面是一个简单的flash版的投票程序,后台使用 xml+ asp+ mysql: 因为大多web工作者对asp比较熟悉,xml可以将复杂的问题简化,采用mysql的原因是access 我没有安装,程序不需要任何存储过程,所以无需动SQL Server ,Oracle 等重兵器.

  问题分析:本投票程序是选择题, 故我们用一个字段存储用户的答案即可.

  建立数据库和表:表名称和数据库名称任意,字段定义如下:

voteid  无符号整数 自动编号
result   短整数 存储用户选择 本程序范围在0-2
userip char (25)  用户ip地址实际长度21
message char(255)  附加消息 //这个程序未用


  使用mysql-front创建,如下图所示:




  设计flash用户界面: 从window/components/flash ui components 中 拖三个 RadioButton到舞台中,
设置标签,其他为默认值。(从属性面板和组件参数面板均可以设置)




  这里将使用一个图表组件(HTML UI Components中的Subtype),你可以到MM扩充资源 www.macromedia.com/exchange/flash 下载.


  参数设置如下:






  flash端的程序非常简单只有三行:

//在时间轴的第一帧,加入下面的代码
//标签名称为"开始投票吧!"的按钮,事件句柄为sendvote,在点击后执行下面的自定义函数
function sendvote () {
_root.mytb.readData("http://localhost/votexml.asp?selectresult="+radioGroup.getInstance());
}

  服务器端程序的编写,上面你可能看到有一个votexml.asp的文件,下面我们就来建立它.

  代码如下:


<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
set conn=server.CreateObject("adodb.connection")
conn.open "dsn=mysql"
set rec=server.CreateObject("adodb.recordset")
%>
<% if request("selectresult")<>"" then
userip= Request.ServerVariables("REMOTE_ADDR")
selectresult=request.QueryString("selectresult")
rec.open "select count(*) as count from votetable where votedate>'"&now()-0.125 & "' and userip='"&userip&"'",conn
if rec("count")>0 then
bzh="重复投票无效"
rec.close
'response.Write("请不要重复投票")
else
rec.close
bzh="投票有效"
conn.execute "insert into votetable(userip,result) values('"&userip&"',"& selectresult&")"
end if
else
bzh="查看投票"
end if
rec.open "SELECT result,count(*) as count FROM votetable group by result ORDER BY result asc",conn
t0=cint(rec("count"))
rec.movenext
t1=cint(rec("count"))
rec.movenext
t2=cint(rec("count"))
tcount=t0+t1+t2
Response.contenttype="text/xml"
%>
<% Response.write ""
response.Write("")
Response.write ""
response.Write("")
response.Write("")
response.Write("")
response.Write("
")
%>
<%
Response.write "
"
rec.close
set rec=nothing
conn.close
set conn=nothing
%>


  将文件保存为votexml.asp,放置到web路径为"/"的目录中,即可.


  备注:实际应用到web服务器的时候,请在flash中使用相对路径.flash movie和votexml.asp可以放置到任何目录中.





文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·消除文字勾边后产生毛刺的小技巧 · 解决COREDRAW9与双核CPU冲突的技巧 5
·CorelDRAW入门与进阶实例:8.2椭圆按钮制 ·CorelDRAW印前分色新手上路
·IllustratorCS制作刺绣效果 ·CorelDRAW使用技巧-如何在CorelDRAW中虚

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。