使用复选框删除多个用户 [英] Delete multiple users using checkbox

查看:71
本文介绍了使用复选框删除多个用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用复选框实际删除多个用户?我有一个页面,它显示所有创建的用户,根据创建的用户数创建的每一行旁边都有一个复选框。现在,我一次只能删除一个复选框。



我明白,对于多次删除,我需要使用String []。但我的代码只抓取第一个要删除的复选框。



我的servlet代码:

  String  [] userID = request.getParameterValues(  deleteUser); 


for int i = 0; i< userID .length; i ++){
int userId = Integer.parseInt(request.getParameter( deleteUser));
用户users = new User();
users.setUserID(userId);
DAOManager mgr = new DAOManager();
mgr.deleteUsers(用户);
response.sendRedirect( reg.jsp);





DAO代码:

  public   boolean  deleteUsers(用户用户)
{
字符串 sql = DELETE FROM user WHERE userID =?;
try {

Connection conn = getConnection();

PreparedStatement ps = conn.prepareStatement(sql);

ps.setInt( 1 ,user.getUserID());

ps.executeUpdate();
返回 true;
} catch (例外e){
e.printStackTrace();
return false;
}
}





JSP代码:

<%
DAOManager mgr = new DAOManager();
User [] users = mgr.getAllUsers();
for int i = 0 ; i< users.length; i ++)
{
%>
< tr>
< td>< input
type = 复选框 name = deleteUser
value =<%= users [i] .getUserID()% >>< / TD>
< td><%= users [i] .getUserID()%>< / td>
< td><%= users [i] .getUserName()%>< / td> < / TR>

<%
}
%>

解决方案

  int  userId = Integer.parseInt(userID [i]); 


How do I actually go about deleting multiple users using checkboxes? I have a page whereby it shows all created users with a checkbox beside each row created base on the number of created users. For now, I am only able to delete one checkbox at a time.

I understand that for multiple deletion, i need to make use of String []. But my code only does grabs the first checkbox to delete.

My servlet code:

String []userID = request.getParameterValues("deleteUser");
				
				
				for(int i=0;i<userID.length;i++){
					int userId = Integer.parseInt(request.getParameter("deleteUser")); 
					User users = new User();
					users.setUserID(userId);
					DAOManager mgr = new DAOManager();
					mgr.deleteUsers(users);
					response.sendRedirect("reg.jsp");



DAO Code:

public boolean deleteUsers(User user)
	{
		String sql = "DELETE FROM user WHERE userID=?";
		try {
		
		Connection conn = getConnection();
		
		PreparedStatement ps = conn.prepareStatement(sql);
		
		ps.setInt(1, user.getUserID());
		
		ps.executeUpdate();
		return true;
		} catch (Exception e) {
		e.printStackTrace();
		return false;
		}
		}



JSP code:

	<%
DAOManager mgr = new DAOManager();
User[] users = mgr.getAllUsers();
for(int i = 0; i < users.length; i++)
 {
%>
										<tr>
												<td><input
													type="checkbox" name="deleteUser"
													value=<%=users[i].getUserID()%>></td>
												<td><%=users[i].getUserID()%></td>
												<td><%=users[i].getUserName()%></td>										</tr>
										
										<%
}
%>

解决方案

int userId = Integer.parseInt(userID[i]); 


这篇关于使用复选框删除多个用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆