【发布时间】:2015-11-26 18:04:26
【问题描述】:
我有 2 个 HTML 表单: 1.注册/登录 2. 用户登录后,他会更新他的详细信息。
我使用 MySql 数据库来保存用户的登录详细信息。而且我还有另一个表格,用于在他登录后更新他的详细信息。
我在注册/登录过程中成功了。但是这里出现了问题。,。,我不知道如何进一步进行。,在他登录之后,用户应该能够在他各自的表格中更新他的详细信息。
这是我的登录 Servlet,它在用户登录后从第一个主登录表单获取信息。然后是另一个 HTML 表单,用户在其中输入他的个人详细信息。存储在另一个表中。出现问题。,我'无法处理第二个表中用户的详细信息
登录小服务程序:
package com.ea.servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class Register extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String name = request.getParameter("name");
String pass = request.getParameter("pass");
String mem = request.getParameter("mem");
try{
//loading drivers for mysql
Class.forName("com.mysql.jdbc.Driver");
//creating connection with the database
Connection con=DriverManager.getConnection
("jdbc:mysql://localhost:3306/EATWO","root","");
Statement statement = (Statement) con.createStatement();
ResultSet rs = statement.executeQuery("SELECT * from singer where name='" + name + "'");
String duplicate = null;
while(rs.next()){
duplicate = rs.getString(1);
}
if(duplicate == null){
PreparedStatement ps=con.prepareStatement
("insert into Singer(name,password,member) values(?,?,?)");
ps.setString(1, name);
ps.setString(2, pass);
ps.setString(3, mem);
int i=ps.executeUpdate();
if(i>0)
{
out.println("You are sucessfully registered");
}
}
else{
//request.getRequestDispatcher("/register.html").forward(request, response);
//request.setAttribute("error","Invalid Username/password");
request.getRequestDispatcher("/register_err.html").forward(request, response);
}
}
catch(Exception se)
{
se.printStackTrace();
}
}
这段代码是要说的...我希望根据您的建议更正此服务。这是第二个子表单。用户登录后的位置。此代码帮助用户存储他的个人详细信息., 但我被这个卡住了。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class Register extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String name = request.getParameter("name");
String pass = request.getParameter("pass");
String mem = request.getParameter("mem");
try{
//loading drivers for mysql
Class.forName("com.mysql.jdbc.Driver");
//creating connection with the database
Connection con=DriverManager.getConnection
("jdbc:mysql://localhost:3306/EATWO","root","");
Statement statement = (Statement) con.createStatement();
ResultSet rs = statement.executeQuery("SELECT * from singer where name='" + name + "'");
String duplicate = null;
while(rs.next()){
duplicate = rs.getString(1);
}
if(duplicate == null){
PreparedStatement ps=con.prepareStatement
("insert into Singer(name,password,member) values(?,?,?)");
ps.setString(1, name);
ps.setString(2, pass);
ps.setString(3, mem);
int i=ps.executeUpdate();
if(i>0)
{
out.println("You are sucessfully registered");
}
}
else{
//request.getRequestDispatcher("/register.html").forward(request, response);
//request.setAttribute("error","Invalid Username/password");
request.getRequestDispatcher("/register_err.html").forward(request, response);
}
}
catch(Exception se)
{
se.printStackTrace();
}
}
【问题讨论】:
-
请向我们展示一些您到目前为止所做的代码。
-
是的。显示一些代码。
-
等待您的建议!!!!
-
只是为了确定我是否正确:您想登录,然后被重定向到更新页面。对吗?
-
是的!!!确切地!!!用户登录并更新他的详细信息..这是确切的场景..你现在能帮我吗@Paulinho
标签: java html mysql servlets jdbc