2017-09-28 2 views
1

Actuellement j'écris dans une base de données pour les utilisateurs utilisant mysql, l'utilisateur a quelques champs, et je voudrais les avoir capables de mettre à jour leur profil utilisateur actuel en utilisant un formulaire. Dans l'espace réservé, je voudrais afficher leurs informations actuelles. L'envoi doit modifier les informations fournies et mettre à jour le tableau.Comment mettre à jour les informations utilisateur mysql en utilisant servlet

<h2>Update your profile</h2> 
<div class="form"> 
    <form action="/updateprofile"> 
     <input type="text" name="Email_Address" placeholder="Email Address"> 
     <input type="text" name="First_Name" placeholder="First Name"> 
     <input type="text" name="Last_Name" placeholder="Last Name"> 
     <input class="button" type="submit"> 
    </form> 
</div> 

Et voici le code de servlet {pas tout simplement écrire dans le sqldb}

protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 

    //Obtain submitted form data 
    String firstName = req.getParameter("First_Name"); 
    String lastName = req.getParameter("Last_Name"); 
    String username = req.getParameter("User_Name"); 
    String email = req.getParameter("Email_Address"); 
    String password =req.getParameter("Password"); 

    try { 
    //Setup the Database datasource 
    Context ctx = new InitialContext(); 
    Context env = (Context)ctx.lookup("java:comp/env"); 
    DataSource ds = (DataSource)env.lookup("jdbc/carRentalSystem"); 
    Connection conn = ds.getConnection(); 

    //Prepare the SQL statmenet to insert the values 
    PreparedStatement stmt = conn.prepareStatement("INSERT INTO userdetails(First_Name, Last_Name, Email_Address, Password, User_Name) VALUES (?,?,?,?,?)"); 
    stmt.setString(1, firstName); 
    stmt.setString(2, lastName); 
    stmt.setString(3, email); 
    stmt.setString(4, password); 
    stmt.setString(5, username); 

    //Execute the insert 
    stmt.executeUpdate(); 
    conn.close(); 

    //Dispatch into success page 
    RequestDispatcher requestDispatcher = req.getRequestDispatcher("login.html"); 
    requestDispatcher.forward(req, res); 
} 
    catch(Exception e){ 
     System.out.println(e); 
    } 
+0

Où est votre code de servlet? ce que vous avez fait du côté serveur? – assembler

+0

mis à jour avec le code de servlet –

+1

où est 'UPDATE'? – Ravi

Répondre

0

j'ai changé cette mise à jour au lieu d'insérer dans, Ce fut une grosse erreur stupide que je présente mes excuses ce pris ça longtemps.