好源码站-站长学院 - 首页

| 网络编程 | 数据库类 | 网页设计 | 服务器类 | 网站推广 |

搜索:

收藏本站|| 广告服务 |

您的位置:好源码站-站长学院-> 网络编程-> ASP教程-> Flash+ASP联合打造投票程序(图)

ASP教程

ASP教程
PHP教程
.Net教程
JSP教程
XML教程
CGI教程

本类阅读TOP10

·ASP应用之模板采用
·动网论坛超级安装指南,新新人类请进来看看
·使用ASP+jmail进行邮件群发
·用ASP程序组建基于WWW的聊天室
·如何使用ASP建立虚拟的FTP服务器
·ASP教程:第十四篇 ActiveX 组件
·堵住ASP漏洞
·利用ASP打造个性化论坛(上)
·ASP教程:第十九篇 最新的ASP、IIS安全漏洞
·asp学习注意

广告
Flash+ASP联合打造投票程序(图)

作者:未知 来源:未知 加入时间:2007-10-19 www.haocodes.com

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

  下面是一个简单的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创建,如下图所示:





图1


    设计flash用户界面:从window/components/flash ui components中拖三个RadioButton到舞台中,

  设置标签,其他为默认值。(从属性面板和组件参数面板均可以设置)





图2


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





图3








图4


    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 "<?xml version='1.0' encoding='gb2312'?>"
response.Write("<root bz='"&bzh&"'>")
Response.write "<base><data value='相信' color='0xff00cc'/><data value='不相信' color='0x0000CC'/><data value='现在还不清楚' color='0x00cc00'/></base>"
response.Write("<record value='共"&tcount&"票' color='0x0000CC'>")
response.Write("<data value='"&t0/tcount&"'/>")
response.Write("<data value='"&t1/tcount&"'/>")
response.Write("<data value='"&t2/tcount&"'/></record>")
%>
<%
Response.write "</root>"
rec.close
set rec=nothing
conn.close
set conn=nothing
%>将文件保存为votexml.ASP,放置到web路径为"/"的目录中,即可. 备注:实际应用到web服务器的时候,请在flash中使用相对路径.flash movie和votexml.asp可以放置到任何目录中.


相关文章


关于本站服务条款广告服务客服中心发布文章

客服QQ:6508128
好源码站-版权所有 ICP备05000822号 www.haocodes.com