30/09/2018, 20:59
Update sử dụng jsp
em gặp chút vấn đề về việc update lại dữ liệu trong database,
khi em update thì dữ liệu k dc chuyển vào database mà nó chạy đâu mất ấy.
bác nào biết chỉ giúp em với ạ.
thank các bác! :v
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.util.concurrent.ExecutionException"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.Statement"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action ="edit.jsp" name="editform" method="post">
<%!
int stt;
String hoten="";
String namsinh="";
String gioitinh="";
String diachi="";
String email="";
%>
<br><br><br>
<table align="center" width="300px" style="background-color: gray; border: 1px solid #000000">
<tr><td colspan=2 style="font-weight:bold;" align="center">Edit Data</td></tr>
<tr><td colspan=2 align="center" height="10px"></td></tr>
<tr>
<td>Ho Ten</td>
<td><input type="text" name="hoten" value="<%=hoten%>"></td>
</tr>
<tr>
<td>Nam Sinh</td>
<td><input type="text" name="namsinh" value="<%=namsinh%>"></td>
</tr>
<tr>
<td>Gioi Tinh</td>
<td>
<input type="radio" name="gioitinh" value="1" checked="checked">Nam
<input type="radio" name="gioitinh" value="0">Nu
</td>
</tr>
<tr>
<td>Dia Chi</td>
<td><input type="text" name="diachi" value="<%=diachi%>"></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" value="<%=email%>"></td>
</tr>
<tr>
<td><input type="submit" name="Submit" value="Update"
style="background-color:black;font-weight:bold;color:#ffffff;"></td>
</tr>
<tr><td colspan=2 align="center" height="10px"></td></tr>
</table>
<%
String hoten=request.getParameter("hoten");
String namsinh=request.getParameter("namsinh");
String gioitinh=request.getParameter("gioitinh");
String diachi=request.getParameter("diachi");
String email=request.getParameter("email");
Statement stm;
ResultSet rs;
Connection conn;
if(hoten==null || hoten=="" || namsinh==null || namsinh=="" || gioitinh==null || gioitinh==""||
diachi==null || diachi=="" || email==null || email==""){
try{
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/register", "root","1111");
stm = conn.createStatement();
int i =stm.executeUpdate("SELECT * FROM student WHERE stt="+stt+" ");
rs = stm.executeQuery("UPDATE student SET stt="+stt+", hoten= '"+ hoten +"', namsinh='"+ namsinh +"', gioitinh='"+ gioitinh +"', diachi='"+ diachi +"', email='"+ email +"' Where stt="+stt+" ");
if(i>0){
response.sendRedirect("thongtinhs.jsp");
}
conn.close();
System.out.println("Disconnected from database");
%>
<br>
<TABLE style="background-color: #E3E4FA;"
WIDTH="30%" border="1">
<tr><th>Data Modified successfully
in database.</th></tr>
</TABLE>
<%
} catch (Exception e) {
e.printStackTrace();
}
}
%>
</form>
</body>
</html>
Bài liên quan
:3 Lâu rồi minh k làm cái này nên cũng chẳng nhớ nữa nhưng mình nghĩ bạn nên xây dựng theo mô hình MVC, sử dụng Servlet làm controller và jsp chỉ để làm view thôi
thank bác! vì em chỉ làm cái này là bài tập lớn trên lớp. và cũng k thích học cái này nên muốn làm đơn giản cho nhanh xong thôi mà :D.
thank BigCat, em sẽ làm thử xem sao.