Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 接上 [Re:SQL20000]
SQL20000





发贴: 66
积分: 0
于 2003-08-06 13:49 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
startvote.jsp
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
<%@ page contentType="text/html;charset=gb2312" language="java"%>
<%@page import="java.sql.*"%>
<%@include file="./include/config.inc.jsp"%>
<%@include file="./global.jsp"%>
<%@include file="./include/conn.jsp"%>
<html>
<body>
<%!
//记录总票数的变量.
int total=0;
//操作总票数的同步方法.
synchronized void countTotal()
{
total++;
}
%>
<%
boolean vote=true;//决定用户是否有权投票的变量.
//得到被选择的候选人名字.
String name="";
name=request.getParameter("name");
if(name==null)
{
name="?";
}
byte a[]=name.getBytes("ISO-8859-1");
name=new StringAngel;
//得到投票人的IP地址.
String IP=(String)request.getRemoteAddr();
//加载桥接器.

java.sql.Statement statement=conn.createStatement();
//rs=statement.executeQuery("select * from gqxx");
//首页查询IP表,判断该用户的IP地址是否已经投过票.
try
{
//sql=con.createStatement();
rs=statement.executeQuery("select * from IP where IP="+"'"+IP+"'");
int row=0;
while(rs.next())
{
row++;
}
if(row>1)
{
vote=false;//不允许投票.
}

}
catch(SQLException e)
{}
if(name.equals("?"))
{
out.print("您没有投票,没有权利看选举结果");
}
else
{
if(vote)
{ out.print("您投了一票");
//将总票数加1.
countTotal();
//通过连接数据库,给该候选人增加一票.
//同时将自己的IP地址写入数据库.
try
{ rs=statement.executeQuery("select * from people where name="+"'"+name+"'");
rs.next();
int count=rs.getInt("count");
count++;
String condition="update people set count="+count+" where name="+"'"+name+"'";
//执行更新的操作(投票计数).
statement.executeUpdate(condition);
//将IP地址写入IP表.
String to="insert into IP values"+"("+"'"+IP+"'"+")";
statement.executeUpdate(to);
}
catch(SQLException e)
{}
//显示投票后的表的记录.
try {
rs=statement.executeQuery("select * from people");
out.println("<table border>");
out.println("<tr>");
out.println("<th width=100>"+"姓名");
out.println("<th widht=50>"+"得票数");
out.println("<th widht=50>"+"总票数:"+total);
out.println("</tr>");
while (rs.next())
{
out.println("<tr>");
out.println("<td>"+rs.getString(1)+"</td>");
int count=rs.getInt("count");
out.print("<td>"+count+"</td>");
double b=(count*100)/total;//得票的百分比.
out.println("<td>"+b+"%"+"</td>");
out.println("</tr>");
}
out.print("</table>");
conn.close();
}
catch(SQLException e)
{}
}

else
{
out.println("您已经投过票了");
}
}

%>
</html>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;




一个程序员的奋斗历程

话题树型展开
人气 标题 作者 字数 发贴时间
3912 投票系统只记录票数不记录百分之求助??? SQL20000 1250 2003-08-06 13:47
3090 接上 SQL20000 2348 2003-08-06 13:49
2995 接上 SQL20000 108 2003-08-06 13:52
3141 接上 SQL20000 624 2003-08-06 14:01

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923