安大互联
财经热点 > Asp编程 > 用ASP制作个性化的调查板
用ASP制作个性化的调查板
浏览次数:【330】  发布日期:2009-8-13 12:09:22    文章分类:Asp编程   
专题:】 【
 
现在,在互联网上做调查已经十分普遍了,很多商业网站的网页上常放有各种主题的调查板,一些商业网站也免费为网友提供调查板,好比:博大(poll.bodachina.com)。因为网络的普及,网上调查往往能达到较好的效果。在自己的个人站点上放一个趣味问题调查板,着实能为网站添色很多;况且通过调查结果你能更多更准确了解网友对自己站点的意见。作为Webmaster,假如你的网站也需要就某个主题进行调查,而你又讨厌使用别人免费提供的调查板(免费往往是要付出代价的,好比宣传广告!),那么我推荐你花十几分钟时间看完这篇介绍用ASP制作调查板的文章。你仅需把文中的代码Copy到你的机子上,稍做更改,你迅速就拥有一个属于你自己的个性化调查板。好了,打起精神往下看吧。
    本调查板共有三个文件:显示调盘问题(research.html)、处理用户选择(select.asp)、浏览调查结果(viewresult.asp)。设计思路为:ASP取得由表单发来的信息,并据此更改记录调查得票数的数据库,然后ASP读取数据库,获得各个调盘问题的得票数目,通过得票数多少来调理对应条形图显示的宽来直观比例地给出调查结果。在程序的关键处,我都给出了较为详细的注释,这里就不再讲述ASP的基本知识。读者可以到陶吧ASP专栏查询。当然,我希望你在自己的服务器上调试程序时,有不懂的地方,还是查查身边的ASP技术手册,瞧瞧对象、方法或函数的详细语法试着更改,瞧瞧结果如何变化——这可是学习编程的一个好措施呢。
  
  一、显示调盘问题(research.html)
  
    调盘问题的设计要依据实际情况,或讲究实用性或讲究趣味性,在网页上显示的风格也或朴素或活泼,本例中是笔者主页上的一个关于“21世纪最关键的是啥?”的趣味调查,为说明问题,下面的代码中省略了美观修饰的代码,你自己动手设计时完全可以使用表格等技巧美化调盘问题的显示。为了使提交或浏览调查时不影响当前页面,程序中给出了弹出新窗口的方案。
  researchindex.html:
  
  < html >
  < title >调查板测试< /title >
  < head >
  < !-- start:定义新开的窗口-- >
  < script language=javascript >
  < !--
  var newWindow = null
  function OpenWindow(htmurl)
  {
  if (! newWindow || newWindow.closed)
  {
  newWindow =
  window.open(htmurl,"newwin","toolbar=no,resizable=no,scrollbars=no,width=400,height=280");
  }else
  {
  newWindow.focus();
  }
  }
  //-- >
  < /script >
  < !-- end:定义新开的窗口-- >
  < /head >
  < body >
  < !-- start:调查题目、选项 -- >
  < p >您认为21世纪最关键的是啥?< /p >
  < form method="POST" action="vote/select.asp" name="research" LANGUAGE="javascript"
   target="newwin" >
  < p align="left" >
  < br >
  < input type="radio" value="1" name="Options" >知识(知识就是力量)< br >
  < input type="radio" value="2" name="Options" >学历(学历社会没有终结)< br >
  < input type="radio" value="3" name="Options" >金钱(经济就是基础)< br >
  < input type="radio" value="4" name="Options" >爱情(永不进入坟墓的爱情)< br >
  < input type="radio" value="5" name="Options" >理想(天啦,理想是啥)< br >
  < input type="radio" value="6" name="Options" >民主意识(关心政治)< br >
  < input type="radio" value="7" name="Options" >科学思想(科教兴国)< br >
  < input type="submit" value="提交" name="voting" >
  < input type="button" value="查看" name="viewing" >
  < /form >
  < !-- start:调查题目、选项 -- >
  < /body >
  < /html >
  
  二、处理用户选择(select.asp)
  
    依据上面的调查选项,我们得出记录调查得票的数据库researchdb.mdb的设计(以Access为例),表名为:research。假如你的数据库和表没有存为以上的称号,那么在后面的程序和操作中你不要忘记也相应更改过来。
  
  存放调查投票数的表research:
  
  字段名  数据类型  默认值
  id    自动编号    1
  select1  数字     0
  select2  数字     0
  select3  数字     0
  select4  数字     0
  select5  数字     0
  select6  数字     0
  select7  数字     0
  
  
    建好数据库后,我们来在服务器上建立数据源。首先,运行“控制面板”中的“ODBC”,选择“系统DSN”,按“添加”按钮,选取“Microsoft Access Driver”,选定后按“完成”按钮,然后在ODBC设定中“数据源名”输入框输入数据库名称,本例中为researchdb,然后按下“选取”按钮选择数据库文件(你不会说你忘记了刚刚设计的数据库存在那里了吧),选定后按“确定”,你即可看到新建的数据源 researchdb。这样,我们就可以在ASP中调用了。
  select.asp:
  
  < %
  '下面的if语句是通过验证selected是否为空来判断用户是否作了选择
  if request.form("options") < >Empty then
  % >
  
  < %
  '下面的if语句是通过比较Request的两个collection(ServerVariables和Cookies)的值
  '来防止用户连续按提交而影响调查的结果
  if not Request.ServerVariables("REMOTE_ADDR")=request.cookies("IPAddress") then
  '把访问客户的IP信息写入Cookies
  response.cookies("IPAddress")=Request.ServerVariables("REMOTE_ADDR")
  % >
  < %
  '建立连接(Connection)对象,打开记录调查结果的数据库
  set conn=server.createobject("ADODB.CONNECTION")
  conn.open "researchdb"
  % >
  
  < %
  '定义变量
  dim rs
  dim sql
  dim selected
  selected=request.form("options")
  '建立记录集合(Recordset

手机扫码浏览该文章
 ● 相关资讯专题
  • 网络建设业务咨询

   TEl:13626712526