投票用户控件

王朝学院·作者佚名  2016-05-21
窄屏简体版  字體: 小  |  中  |  大  |  超大  

投票用户控件 //投票 PRotected void btn_Vote_Click(object sender, EventArgs e) { string useripAddress = Request.UserHostAddress.ToString();//获取用户本地的IP地址 HttpCookie oldCookie=Request.Cookies["UserIP"];//创建Cookie对象 if (oldCookie == null)//该用户没有投票记录 { int flag = this.rbl_Evaluate.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; default: break; } Page.RegisterClientScriptBlock("", "<script>alert('投票成功,谢谢您的参与')<script>"); HttpCookie newCookie = new HttpCookie("UserIP");//创建新的Cookie对象 newCookie.Expires = DateTime.MaxValue;//设置Cookie的有效时间 newCookie.Values.Add("IPAddress", userIpAddress);//添加用户的IP地址在Cookie中,保存起来 Response.AppendCookie(newCookie);//将变量写入Cookie文件中 } else { string userOldAddress = oldCookie.Values["IPAddress"].ToString(); if (userIpAddress.Trim() == userOldAddress.Trim())//创建Cookie对象 { Page.RegisterClientScriptBlock("", "<script>alert('每天只能投票一次,谢谢您的光顾!!')</script>"); } else { HttpCookie newCookie = new HttpCookie("UserIP");//创建新的Cookie对象 newCookie.Values.Add("IpAddress", userIpAddress); newCookie.Expires = DateTime.MaxValue; Response.AppendCookie(newCookie); int flag = this.rbl_Evaluate.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; default: break; } Page.RegisterClientScriptBlock("", "<script>alert('投票成功谢谢您的参与')</script>"); } } }

/// <summary> /// 读取文本文件中的数字 /// </summary> /// <param name="str_path">文本文件的路径</param> /// <returns>返回结果</returns> protected static int ReadCount(string str_path) { int count = 0;//创建整形的变量 System.IO.StreamReader srd;//创建流读取对象 srd = System.IO.File.OpenText(str_path);//打开指定的文本文件 if (srd.Peek()!=-1)//如果有数据 { count = int.Parse(srd.ReadLine());//读取文本文件的数字赋值给count } srd.Close();//关闭流对象 return count; }

/// <summary> /// 对现有的投票数进行增加 /// </summary> /// <param name="str_path">文本文件的路径</param> protected static void AddCount(string str_path) { int count = ReadCount(str_path); count += 1; System.IO.StreamWriter swr = new System.IO.StreamWriter(str_path);//将数据的记录写入文件 swr.WriteLine(count); swr.Close(); }

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航