日期:2010-08-06  浏览次数:20956 次

     用到现在,你也许确实学到了不少,但也许会提出疑问:这个放在FSO文件操作里有什么作用呢?

    那下面才是我们的正题:用FSO进行简单的文本投票。

    投票页面首要的就是显示各类项目的投票数,并相应赋于某个变量。然后判断本次投票的选相,相对应地将投票数值加1,完毕后再将所有值继续写入文本。

    1,一个HTML表单页Website.html

    以做投票点击的平台。

  用到现在,你也许确实学到了不少,但也许会提出疑问:这个放在FSO文件操作里有什么作用呢?
  那下面才是我们的正题:用FSO进行简单的文本投票。

  <form action="result.ASP" method="post">
  <input type="radio" name="website" value="A" checked> cnbruce.com<br><input type="radio" name="website" value="B"> blueidea.com<br><input type="radio" name="website" value="C"> it365cn.com<br><input type="radio" name="website" value="D"> 5d.cn<br><input type="submit"><input type="reset">

    2,接受表单页值的result.asp

  <%whichfile=server.mappath("site.txt")
  set fso=createobject("Scripting.FileSystemObject")
  set thisfile=fso.opentextfile(whichfile)
  my_string=thisfile.read
  linea_num = instr(my_string,"A")
  b_num = instr(my_string,"B")
  c_num = instr(my_string,"C")
  d_num = instr(my_string,"D")
  total_num = len(my_string)
  a_value = mid(my_string,a_num+1,b_num-a_num-1)
  b_value = mid(my_string,b_num+1,c_num-b_num-1)
  c_value = mid(my_string,c_num+1,d_num-c_num-1)
  d_value = mid(my_string,d_num+1,total_num-d_num)
  select case request.form("website")
  case "A": a_value=a_value+1
  case "B": b_value=b_value+1
  case "C": c_value=c_value+1
  case "D": d_value=d_value+1
  end select
  mynew_string="A" & cstr(a_value) & "B" & cstr(b_value) & "C" & cstr(c_value) & "D" & cstr(d_value)
  set newfile=fso.createtextfile(whichfile)
  newfile.writeLine(mynew_string)
  newfile.closeset fso=nothing%>当前投票:<br>cnbruce.com:<%=a_value%>
  <br>blueidea.com:<%=b_value%><br>
  it356cn.com:<%=c_value%><br>
  5d.cn:<%=d_value%><br>
  <a href="website.html">返回继续</a>

    有了上面函数的基础,看这个应该不是很难的。

    3,最后不要忘了的记数文件site.txt

    格式:A1B1C1D1

    调试

    OK,三个文件就可以胜任一个很简单的投票系统了,如果要加强,需要细化的则结合以前的知识吧,比如投过一次后设置session或者cookies,当再次投票时候判断如果session或者cookies存在则不允许,也就是简单的投票防作假手段了……当然更多的还是要自己去想去实践了。