Flash ASP联合打造投票程式

2008-04-02 10:54:23来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  为了调查了解站点访问者对特定问题的立场,我们能够在站点中配置投票程式,站点访问者直接选择答案,程式自动对任何答案进行统计和显示.

  下面是个简单的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能够放置到任何目录中.

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 使用时间轴特效

下一篇: Flash无法导入声音问题的解决方案