在前台页面先加入RadioButtonList控件

   if (!IsPostBack){Per();}}protected void btn_toupiao_Click(object sender, EventArgs e){string P_str_IP = Request.UserHostAddress.ToString();//获取客户端IP地址HttpCookie oldCookie = Request.Cookies["userIP"];if (oldCookie == null){int flag = RadioButtonList1.SelectedIndex;switch (flag){case 0: addCount(Server.MapPath("result1.txt")); break;case 1: addCount(Server.MapPath("result2.txt")); break;case 2: addCount(Server.MapPath("result3.txt")); break;}ClientScript.RegisterStartupScript(GetType(), "", "alert('投票成功,谢谢参与!')", true);HttpCookie newCookie = new HttpCookie("userIP");//定义新的Cookie对象newCookie.Expires = DateTime.MaxValue;//设置Cookie有效时间//添加新的Cookie变量IPaddress,值为P_str_IPnewCookie.Values.Add("IPaddress", P_str_IP);Response.AppendCookie(newCookie);//将变量写入Cookie文件中
}else{ string P_str_oldIP = oldCookie.Values["IPaddress"];if (P_str_IP.Trim() == P_str_oldIP.Trim()){ClientScript.RegisterStartupScript(GetType(), "", "alert('您已经投过票了,不能再次投票,谢谢参与!')", true);}else{HttpCookie newCookie = new HttpCookie("userIP");//定义新的Cookie对象newCookie.Expires = DateTime.MaxValue;//设置Cookie有效时间//添加新的Cookie变量IPaddress,值为P_str_IPnewCookie.Values.Add("IPaddress", P_str_IP);Response.AppendCookie(newCookie);//将变量写入Cookie文件中int flag = RadioButtonList1.SelectedIndex;switch (flag){case 0: addCount(Server.MapPath("result1.txt")); break;case 1: addCount(Server.MapPath("result2.txt")); break;case 2: addCount(Server.MapPath("result3.txt")); break;}ClientScript.RegisterStartupScript(GetType(), "", "alert('投票成功,谢谢参与!')", true);}}}//绑定投票数的百分比到前端显示protected string M_str_rate1;protected string M_str_rate2;protected string M_str_rate3;protected int P_int_count1;protected int P_int_count2;protected int P_int_count3;public void Per(){P_int_count1 = readCount(Server.MapPath("result1.txt"));P_int_count2 = readCount(Server.MapPath("result2.txt"));P_int_count3 = readCount(Server.MapPath("result3.txt"));int P_int_count = P_int_count1 + P_int_count2 + P_int_count3;if (P_int_count == 0){lblresult.Text = "共有0人参与投票";}else{M_str_rate1 = (Convert.ToDouble(P_int_count1) * 100 / Convert.ToDouble(P_int_count)).ToString("0.00") + "%";M_str_rate2 = (Convert.ToDouble(P_int_count2) * 100 / Convert.ToDouble(P_int_count)).ToString("0.00") + "%";M_str_rate3 = (Convert.ToDouble(P_int_count3) * 100 / Convert.ToDouble(P_int_count)).ToString("0.00") + "%";lblBanana.Text = M_str_rate1;lblApple.Text = M_str_rate2;lblWatermelon.Text = M_str_rate3;lblresult.Text = "共有" + P_int_count.ToString() + "人参与投票。";}}//读取指定路径文件中存在的投票数public static int readCount(string P_str_path){int P_int_count = 0;StreamReader sr;sr = File.OpenText(P_str_path);while (sr.Peek() != -1){P_int_count = int.Parse(sr.ReadLine());}sr.Close();return P_int_count;}//向指定路径文件中写入投票数public static void addCount(string P_str_path){int P_int_count = readCount(P_str_path);P_int_count += 1;StreamWriter sw = new StreamWriter(P_str_path, false);sw.WriteLine(P_int_count);sw.Close();}

转载于:https://www.cnblogs.com/it-bobo/p/3899629.html

Cookie投票程序相关推荐

  1. php编写一个投票程序,实例学习PHP之投票程序篇(一)

    本篇是"实例学习 PHP 之表单处理"的后继篇,请对php处理表单不清楚的朋友先看前篇----实例学习 PHP 之表单处理. 大家学习完前一篇表单处理之后,是不是信心十足的想做点小 ...

  2. 用python做一个简单的投票程序_如何编写一个自动投票程序

    展开全部 此文章为ocean所有32313133353236313431303231363533e59b9ee7ad9431333335346138,版权归ocean所有 如何编写投票程序,大致分为这 ...

  3. java自动投票软件_如何编写一个自动投票程序

    *********************************************************************************** *                ...

  4. Bluemix云端数据库服务ClearDB MySQL使用示例———Python开发投票程序

    越来越多的服务走向云端,看不见摸不着,让没接触过的我感觉有些茫然,IBM的云平台Blumemix上提供了很多服务,我这里就把学习使用ClearDBMySQL Database服务的过程给大家分享一下. ...

  5. 如何编写一个自动投票程序

    *********************************************************************************** *                ...

  6. Bluemix云端数据库服务使用示例———PHP投票程序

    越来越多的服务走向云端,看不见摸不着,让没接触过的我感觉有些茫然,IBM的云平台Blumemix上提供了很多服务,我这里就把学习使用ClearDB MySQL Database服务的过程给大家分享一下 ...

  7. 如何编写一个自动投票程序 1

    ***********************************************************************************  *               ...

  8. 综合应用题:投票程序(知识点:对象,数组,循环,流,工具类的应用)

    编写一个投票程序,具体如下: 1)功能描述 a.有一个班级采用民主投票的方法推选班长,班长候选人共4位,每个人姓名.编号,分别为"张三 1:李四 2:王五 3:赵六 4". b.投 ...

  9. java简单投票系统_JSP实现的简单Web投票程序代码

    本文实例讲述了JSP实现的简单Web投票程序.分享给大家供大家参考.具体如下: 这里使用文本文件作为数据存储的投票系统. 1. vote.java: package vote; import java ...

最新文章

  1. android 实现 下拉筛选的效果
  2. 反距离加权法高程_干货:企业估值的收益法、成本法和市场法
  3. A typical memory leak
  4. Android:手把手带你深入剖析 Retrofit 2.0 源码
  5. 在Eclipse中查看JDK类库的源代码
  6. 领导者/追随者(Leader/Followers)模型和半同步/半异步(half-sync/half-async)模型
  7. ajax 实时进度_如何做好项目进度管理
  8. Polylink 智能话机之—— e-talk 2200
  9. jdbc 生成建表语句_记录一次TDH的inceptor导出建表语句和数据
  10. 医院药品管理系统源码 HIS系统源码
  11. HTML&CSS:制作简易电商网站
  12. 倍福Twincat下载,下载老版本的twincat软件(新)
  13. 实战Flash游戏开发
  14. ubuntu里面控制器放大缩小屏幕
  15. 华为电脑和手机一碰传_华为手机怎么一碰传文件到电脑教程
  16. 前端偶数行有底纹怎么写_如何在Excel中的替代行上应用底纹
  17. python随机生成三位数字_python3 随机生成数字
  18. 多线程面试题_线程魔术技巧:使用Java线程可以做的5件事
  19. CodeSmith Professional v5.1.3.8510 破解(2009.7.1)
  20. MACE源码解析【ARM卷积篇(一) 】1*N和N*1卷积实现

热门文章

  1. [导入][你必须知道的.NET] 第三回:历史纠葛:特性和属性
  2. python_程序的构成---python工作笔记015
  3. Elasticsearch--springcloud整合 high-level-client-测试-保存数据---全文检索引擎ElasticSearch工作笔记024
  4. ES6新特性_ES6对象的简化写法---JavaScript_ECMAScript_ES6-ES11新特性工作笔记008
  5. C#.Net工作笔记013---c# lambda表达式对list数据进行条件查询_分组_排序_过滤_很好用
  6. mybatis工作总结001_mybatis中_parameter使用和常用sql
  7. c++ tcp 服务器和客户端例子
  8. 英特尔+性能+linux,Linux 4.20内核在英特尔处理器上性能比Linux 4.19低,附原因解释...
  9. 基于STM32F1单片机、ESP8266WIFI模块、DHT11温湿度传感的WIFI网络温湿度传输系统
  10. 冒泡排序法_排序算法 冒泡排序法