今天完善了用户登录系统,使每个用户都有自己独特的id,并对自己代码进行了相应的修改
<%
request.setCharacterEncoding("utf-8");
// 获取表单数据
String username = request.getParameter("Username");
String password = request.getParameter("Password");
if (username == null || username.trim().isEmpty() || password == null || password.trim().isEmpty()) {
// 用户名或密码为空,重定向回 login.jsp 并显示错误信息
response.sendRedirect("login.jsp?error=emptyFields");
} else {
int i = 0;
Connection connection = util.getConnection();
PreparedStatement preparedStatement = null;
ResultSet rs = null;
try {
String sql = "SELECT * FROM 用户基本信息表 WHERE 用户名 = ? AND 密码 = ?";
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, username);
preparedStatement.setString(2, password);
rs = preparedStatement.executeQuery();
if (rs.next()) {
i++;
}
if (i == 0) {
// 用户名或密码不正确,重定向回 login.jsp 并显示错误信息
String encodedUsername = java.net.URLEncoder.encode(username, "UTF-8");
response.sendRedirect("login.jsp?error=invalidCredentials&Username=" + encodedUsername);
} else {
// 登录成功,保存用户名到 session,并重定向到 Menu.jsp
session.setAttribute("Username", username);
response.sendRedirect("/Menu.jsp");
}
} catch (SQLException e) {
e.printStackTrace();
String encodedUsername = java.net.URLEncoder.encode(username, "UTF-8");
response.sendRedirect("login.jsp?error=databaseError&Username=" + encodedUsername);
} finally {
util.close(rs);
util.close(preparedStatement);
util.close(connection);
}
}
%>

浙公网安备 33010602011771号