jsp投票系统求源代码!可以连数据库的!

jsp投票系统求源代码!可以连数据库的!,第1张

<p style=line-height: 150%><SPAN style="FONT-SIZE: 12px"><STRONG>这是用文本文件作为存储载正卖体的唤哪投票系统:</STRONG></SPAN>

<p style=line-height: 150%><SPAN style="FONT-SIZE: 12px"><STRONG>vote.java:</STRONG></SPAN>

<SPAN style="FONT-SIZE: 12px"><STRONG></STRONG><p style=line-height: 150%>

// Java Document

package vote

import java.io.*

import java.util.*

public class vote extends Object

{

public String filePath=""

public int n

private File voteFile

private BufferedReader fileRead

private PrintWriter fileWrite

public String systemMessage="和清码"

private String voteStr[]=new String[10]

public int voteNum[]=new int[10]

public void createFile()

throws FileNotFoundException

{

voteFile=new File(filePath)

if(!voteFile.exists())

{

fileWrite=new PrintWriter(new FileOutputStream(filePath))

for(int i=0i<ni++) fileWrite.println("0")

fileWrite.close()

}

}

public void writeFile()

throws FileNotFoundException

{

fileWrite=new PrintWriter(new FileOutputStream(filePath))

for(int i=0i<ni++)

{

fileWrite.println(voteNum[i])

}

fileWrite.close()

}

public void readFile()

throws FileNotFoundException

{

fileRead=new BufferedReader(new FileReader(filePath))

for(int i=0i<ni++)

{

try

{voteStr[i]=fileRead.readLine()

}

catch(IOException f)

{

voteStr[i]="0"}

voteNum[i]=Integer.parseInt(voteStr[i])

}

try

{

fileRead.close()

}

catch(IOException d)

{

systemMessage=d.toString()

}

}

}

<p style=line-height: 150%><SPAN style="LINE-HEIGHT: 15pt"><SPAN style="FONT-SIZE: 12px"><STRONG>vote.jsp:</STRONG>

<%@ page contentType="text/htmlcharset=gb2312" language="java" errorPage="" %>

<%@ page import="java.util.*"%>

<%@ page import="java.lang.*"%>

<%@ page import="java.io.*"%>

<jsp:useBean id="vote" scope="request" class="vote.vote"/>

<%

String vote1=request.getParameter("lang")

vote.n=4

vote.filePath="vote.txt"

vote.createFile()

vote.readFile()

if(vote1.compareTo("0")==0)

vote.voteNum[0]++

if(vote1.compareTo("1")==0)

vote.voteNum[1]++

if(vote1.compareTo("2")==0)

vote.voteNum[2]++

if(vote1.compareTo("3")==0)

vote.voteNum[3]++

vote.writeFile()

%>

<script language="javascript">

alert("感谢你投了宝贵的一票")

self.location="index.jsp"

</script></SPAN></SPAN>

<p style=line-height: 150%><STRONG></STRONG><SPAN style="LINE-HEIGHT: 15pt"><SPAN style="FONT-SIZE: 12px"><STRONG>see.jsp:</STRONG>

<%@ page contentType="text/htmlcharset=gb2312" language="java" errorPage="" %>

<%@ page import="java.util.*"%>

<%@ page import="java.lang.*"%>

<%@ page import="java.io.*"%>

<jsp:useBean id="vote" scope="request" class="vote.vote"/>

<%

String vote1=request.getParameter("lang")

vote.n=4

vote.filePath="vote.txt"

vote.createFile()

vote.readFile()

int total=0

float voteFlo[]=new float[5]

for(int i=0i<4i++) total+=vote.voteNum[i]

for(int i=0i<4i++) voteFlo[i]=150*((float)vote.voteNum[i]/(float)total)

%>

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>查看调查</title>

<link href="t1.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="30%" border="0" class="t1">

<tr>

<td colspan="2"><div align="center">调查结果</div></td>

</tr>

<tr>

<td width="18%">JSP</td>

<td width="82%"><img src="bar.gif" width=<%=voteFlo[0]%>height=8> <%=vote.voteNum[0]%></td>

</tr>

<tr>

<td>ASP</td>

<td><img src="bar.gif" width=<%=voteFlo[1]%>height=8> <%=vote.voteNum[1]%></td>

</tr>

<tr>

<td>PHP</td>

<td><img src="bar.gif" width=<%=voteFlo[2]%>height=8> <%=vote.voteNum[2]%></td>

</tr>

<tr>

<td>其他</td>

<td><img src="bar.gif" width=<%=voteFlo[3]%>height=8> <%=vote.voteNum[3]%></td>

</tr>

<tr>

<td colspan="2"><div align="center"><a href="javascript:window.close()">关闭窗口</a></div></td>

</tr>

</table>

</body>

</html>

</SPAN></SPAN>

<p style=line-height: 150%><SPAN style="LINE-HEIGHT: 15pt"><SPAN style="FONT-SIZE: 12px"><SPAN style="LINE-HEIGHT: 15pt"><SPAN style="FONT-SIZE: 12px"><STRONG>index.jsp:</STRONG>

</SPAN></SPAN>

</SPAN></SPAN><p style=line-height: 150%><SPAN style="LINE-HEIGHT: 15pt"><SPAN style="FONT-SIZE: 12px"><%@ page contentType="text/htmlcharset=gb2312" language="java" import="java.sql.*" errorPage="" %>

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>投票</title>

<link href="t1.css" rel="stylesheet" type="text/css">

</head>

<script language="javascript">

function cw()

{window.open("see.jsp","mywindow","toolbar=no,left=150,top=200,width=270,height=350,menubar=no,systemMenu=no")

}

</script>

<body>

<table width="15%" height="250" align="left">

<tr>

<td><form name="form1" method="post" action="vote.jsp">

<table width="100%" height="250" border="1" align="center" bordercolor="#9966CC" class="t1">

<tr>

<td><div align="left">你所使用的开发语言</div></td>

</tr>

<tr>

<td><input type="radio" name="lang" value="0">

JSP</td>

</tr>

<tr>

<td><input type="radio" name="lang" value="1">

ASP</td>

</tr>

<tr>

<td><input type="radio" name="lang" value="2">

PHP</td>

</tr>

<tr>

<td><input type="radio" name="lang" value="3">

其他 </td>

</tr>

<tr>

<td><div align="center">

<input name="vote" type="image" src="poll.gif" width="40" height="20" border="0">

<a href="javascript:cw()"><img src="see.gif" width="40" height="20" border="0"></a></div></td>

</tr>

</table>

</form></td>

</tr>

</table>

</body>

</html>

</SPAN></SPAN></SPAN>

首先,先预计一个投票系统需要的项目,有几个页面。一、建立一个数据库存放投票结果的数据;二、第一个页面:vote.asp这是一个投票页面,给网页游览者投票的页面;三、处理页面:addvote.asp这是处理投票数据的页面,是不可见的。四、显示结果页面:view.asp显示投票的结果。

一个投票系统制作大概有以下流程:

1. 先建立一个数据库名字为:data.mdb,data.mdb数据库里有表:vote。vote有fgood(很好),fmid(中等),fbad(很差)这三个列,这个数据表vote: 表中列: 有:fgood,fmid,fbad

2. 建立一个投票页面:vote.asp

在这个页面里面实现表单数据的传输,设计如下:

这是部分的效果,表单名:form1. 代码如下:

<form name="form1" method="post" action="addvote.asp"> 把传输方式设为:post。把动作设为:addvote.asp(这是处理投票结果的页面,由这个动作转到这个处理页面进行数据处理)。

3. 建立一个数据库的链接页:conn.asp.

通过这里把程序与数据库链接起来。

源代码:<%

set conn=server.createobject("adodb.connection")

connstr="Provider=Microsoft.jet.oledb.4.0data source="&server.mappath("data.mdb")

conn.open connstr

%>

4. 建立投票处理页面:addvote.asp。

里面包含数据库链接文件:conn.asp,代码:<!--#i nclude file=" conn.asp" -->。这个页面里主要对vote.asp页面传输过来亏信的表单数据进行处理,把相应的表单数据更新到数据里。传输的数据有三种:fgood、fmid、fbad。处理代码:

<%

if (request.Form("rbresult"))="" then

response.Write(" language=javascript>alert(‘还没投呢!')history.back()</script>")‘//这里检验传输表单是否为空

else response.Write(" language=javascript>alert('谢谢投票!')go(1)</script>")

%>

<%

if(request.form("rbresult")<>"")then Command1__strupdate = request.form("rbresult")

set rs = Server.CreateObject("ADODB.recordset")

sql= "UPDATE vote SET "&Command1__strupdate&"="&Command1__strupdate&"+1"

set rs=conn.execute(sql)

end if

%>

5. 接下来就是处理如何显示投票结果的页面:view.asp。页面效果如下:

这个页面的处理代码:

<%Set rsvote = Server.CreateObject("ADODB.Recordset")

Sql = "SELECT fGood, fMid, fBad, (fGood+fMid+fBad) as VTotal, (fGood/VTotal) as GoodPercent, (fMid/VTotal) as MidPercent, (fBad/VTotal) as BadPercent FROM Vote"

Rsvote=conn.execute(sql)

%> ’//这段代码对数据进行处理

接下来就是显示的问题了。经常看到网站上的投票结果有一个比例长短,这个如何实现呢,其实这个就是利用了网页表格的宽度可以用百分比来表示来做的。步骤如下:

(1).先建立一个四行两列的表格

(2).在表格里面写入数据库的数据以显示结果:

这里的数据是处理完后芹圆的数据,处理过程已经在上面的代码中实现了,下面就是把数据与表格绑定,而柱状的比例条,则是把得到的百分比来绑定内嵌的表格的宽度,因为这个显示的表格宽度数据是一个动态的数据,也就是说可以随着数据的改变而改变柱状的比销首轮例了。绑定如下:

总票数: <%rsvote(“total”)%>

很好: 表格内嵌,设宽为:<%rsvote(“GoodPercent”)%>

共有:<%rsvote(“fGood”)%>人

中等: 表格内嵌,设宽为:<%rsvote(“MidPercent”)%>

共有:<%rsvote(“fMid”)%>人

很差: 表格内嵌,设宽为:<%rsvote(“BadPercent”)%>

共有:<%rsvote(“fBad”)%>人

6. 测试成功了,结果是正确的。显示效果如(5.)中图所示。

总结:总的说来,建立一个网站的投票系统是非常有用的,通过本次的制作,从中我学到了很多知识,如:对数据库的连接,对数据库的 *** 作等语法都有相当多的了解,而且这个投票系统是我个人为班级做的网站http://soho8.net/03eit/上的一个投票系统。作为一个成功的网站是需要有一个投票系统的。能够更好地学习交流、改进。以提高网站制作者的水平,更能够建设出更好的网站。也可以把投票系统改成其他的项目,如问卷调查,完全可以用这个方法来做。然后进行处理统计数据并加以显示。以上为本人做网站过程中制作投票系统的一个总结。在网站建设中有诸多不足之处:对网站开发平台不够熟悉,很多组件及其之间的联系掌握不够以至不能灵活运用,造成网站内容不丰富,结构不太合理。但收获还是梃大的,在这次设计中,使我综合运用所学知识和技能对实际问题的分析概括能力加强,通过检索文献资料、了解、学习、掌握学科专业领域中新的知识和发展动态,并恰当地将其运用到,同时让我深深体会到网站建设的艰辛与乐趣,开发者必须态度端正,认真制定设计方案和工作计划,严格按照流程完成设计的各个环节。

java做投票系统,设计程序如下:

import java.util.Set //调用java.util.Set

import java.util.HashSet//调用java.util.HashSet

import java.util.Iterator//调用java.util.Iterator

public class Voter {//定义类

private static final int MAX_COUNT=100 //静态变量,最大投票数,到达此数就停止投票

private static int count//闹桐薯静态变量,投票数

private static Set<Voter>voters=new HashSet<Voter>() //静态变量,存放所有已经投票的选民

private String name //实例变量,投票人姓名

public Voter(String name){this.name=name} //定义名字字符串函数

/**投票*/

public void voteFor(){ //投票函数

if(count==MAX_COUNT){//如果计数结果等于投票人数最大值

System.out.println("投票活动已经结束") //打印投票活动已经结束

return //返回主函数

}

if(voters.contains(this)) //如果已包含投票人姓名

System.out.println(name+":你不允许重复投票!") //打印投票人姓名和你不允许重复投票!

else{//否则

count++ //计数加一

voters.add(this) //调用字符串函数添加投票人姓名

System.out.println(name+":感谢你投票!") //打印投票人姓名和感谢你投票!

}

}

/**打印投轮判票结果*/

public static void printVoteResult(){ //投票结果函数

System.out.println("当前投票数为:"+count) //打印当前投票数为,并且统计人数

System.out.println("参与投票的选民名单如下") //打印参与投票的选民名单如下

for(Voter voter:voters){//遍历voters集合

System.out.println(voter.name) //打印输出投票名称

}

}

public static void main(String args[]) { //主函数

Voter tom=new Voter("Tom") //开辟空间定义元素tom

Voter mike=new Voter("Mike")//开辟空间定液者义元素mike

Voter jack=new Voter("Jack")//开辟空间定义元素jack

tom.voteFor() //进入tom的投票函数

tom.voteFor() //进入tom的投票函数

mike.voteFor()//进入mike的投票函数

jack.voteFor()//进入jack的投票函数

Voter.printVoteResult() //投票结果打印函数

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12492945.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存